jsp教学课件jspljq06

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的 从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载, 该Web服务器必须包含支持Servlet的Java虚拟机。
Servlet运行在Web服务器端,它是一个可信赖的程序,不受Java安全 性的限制,拥有和普通Java应用程序一样的权限。
</servlet-mapping>
2024/7/5
6
6.1 Servlet技术概述
开发Servlet的过程
测试:
➢现在可以对 பைடு நூலகம்elloServlet 进行测试了,打开浏览器,键 入http://127.0.0.1:8080/虚拟目录名/HelloServlet
中文问题 将 HelloServlet.java 中加入要显示的中文,并重 新进行编译为 : c:\>javac –encoding ISO8859_1 HelloServlet.java
综上所述,Servlet是一个不完善的产品,写应用层很好, 写表示层就逊色许多了,并且两层混杂。
2024/7/5
10
6.4 Servlet的生命周期
Servlet的生命周期始于将它装入Web服务器 运行时,在终止或重新装入Servlet时结束。 是当服务器装载运行servlets,接收来自客户
端的多个请求并且返回数据给客户端,然后再 删除移开servlets。
一个session可以通过Cookie或重写URL 来维持。
2024/7/5
16
6.6 JSP内置对象与Servlet中类的对应关系
在JSP提供了的内置对象中,其中有3个内置对象对 应于Servlet API中的对象,这使得正常理解并熟练使 用Servlet中的这些对象显得尤其重要。这3个JSP的 内置对象和Servlet API中的对象的对应关系是:
命令行为 :c:\>javac HelloServlet.java 进行编译时必须保证 JDK 的 JavaServlet
类已经包含在 CLASSPATH 中,将.class代码放 置在虚拟目录下的WEB-INF/classes/目录下。
2024/7/5
5
6.1 Servlet技术概述
开发Servlet的过程
使用的协议,产生请求并且接收请求的服务器远端主机名。它也提供获取数 据流的ServletInputStream, 这些数据是客户端引用中使用HTTP POST和PUT 方法递交的。一个ServletRequest的子类可以让servlet获取更多的协议特性数 据。
ServletResponse ServletResponse接口给出相应客户端的Servlet方法。它允许Servlet设 置内容长度和回应的MIME类型,并且提供输出流ServletOutputStream,通过 编写者可以发回相应的数据。ServletResponse子类可以给出更多protocolspecific内容的信息。 这个ServletRequest类概括从客户端到服务器之间的联系,而 ServletResponse类概括从Servlet返回客户端的联系。
Servlet是CGI Script的一种替代技术,由于Servlet在性能、可移植性、 代码重用等方面比CGI具有显著的优势,因此在未来的技术发展过程 中,Servlet有可能彻底取代CGI。
2024/7/5
2
6.1 Servlet技术概述
Java Servlet及其特点 Servlet是Java技术对CGI编程的回答。Servlet
HttpServerletRequest子类可以给出更多 的protocal-specific容量的信息。
2024/7/5
15
6.5 Servlet的常用类接口
HttpSession HttpSession接口被Servlet用来实现在
HTTP客户端和HTTP会话两者之间的关联。 这种关联可能在多处连接和请求中持续一段给 定的时间。session用来在无状态的HTTP协议 下越过多个请求页面来维持状态和识别用户。
初始化时期
Servlet的执行时期
Servlet结束时期
2024/7/5
11
6.5 Servlet的常用类接口
在Servlets API中,最常用的是Servlet interface,所有的servlets都执行这个接口。 这些servlets或者是直接执行Servlet接口,或 者是通过扩展类执行。
2024/7/5
9
6.3 Servlet应用范围及其缺陷
从网络三层结构的角度看,一个网络项目最少分三层:数据 层、应用层和表示层。 Servlet用来写应用层是很强大的,但是对于写表示层就 很不方便。 JSP则主要是为了方便写表示层而设计的,当然 也可以写应用层。写惯了ASP、PHP、CGI的朋友,经常会 不自觉地把表示层和应用层混在一起。比如把数据库处理信 息放到JSP中,其实,它应该放在应用层中。 JSP中应该仅 仅存放与表示层有关的部分,也就是说,只放输出HTML网页 的部分。而所有的数据计算、数据分析、数据库连接处理, 统统是属于应用层,应该放在Java Beans中。通过JSP调用 Java Beans,实现两层的整合。
2024/7/5
8
6.2 Servlet与JSP之间的关系
JSP主要关注于HTML(或者XML)与Java代码的结 合,以及加入其中的JSP标记。如果一个支持JSP的 服务器遇到一个JSP页面,它首先查看该页面是否被 编译成为一个Servlet。由此可见,JSP被编译成 Servlet,即被转变为纯Java,然后被装载入服务器 执行。 JSP引擎基本上就是架构在Servlet引擎之上,以 Servlet的形式存在的,利用Servlet引擎或者Content Type对映,把JSP文件转译成Servlet的源文件,调 用Java编译器,编译成Java执行码,以Servlet方式 加以运行。由于上述原因,第一次JSP执行需要花较 长的时间,而后JSP执行时,直接运行Java的执行码, 从而大大提高的JSP的执行速度,这正是JSP的优点 之一。
编写XML配置文件:在WEB-INF目录下新建或修 改web.xml文件,应添加的内容为:
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/HelloServlet</url-pattern>
doGet 用来处理HTTP的GET、头部HEAD请求 doPost 用来处理HTTP的POST请求 doPut用来处理HTTP的PUT请求 doDelete用来处理HTTP的DELETE请求 doHead 用来处理HTTP的HEAD请求 doOptions用来处理HTTP的OPTIONS请求 doTrace用来处理HTTP的TRACE请求
2024/7/5
13
6.5 Servlet的常用类接口
HttpServletRequest
HttpServerletRequest被传到service()方法用来
提供客户的请求信息。
HttpServerletRequest接口可以获取由客户端传
送的阐述名称,也可以获取客户端正在使用的通信
协议,也可以获取产生请求并且接收请求的远端主
模式一 JSP+JavaBeans
模式二
JSP+Servlet+JavaBeans
机名和IP地址等一些信息。
HttpServerletRequest接口提供获取数据流的
Servlet、ServletInputStream方法,这些数据是客户
端引用的POST和PUT方法提交的。一个
ServerletRequest的子类可以让Servlet获取更多的协
议特性数据。
2024/7/5
14
Request对象 (1) 在Servlet中,使用Request对象获取
HTTP文件头的信息 (2) 用Request对象获取表单信息
Session对象
Cookie对象
2024/7/5
17
6.7.1 JSP开发网站的两种模式
JSP技术正是利用了Java的“一次开发,处处使用” 的性能,成为了网站开发技术人员的首选技术。当 然,JSP技术的最大优势在于它能够将页面的表现形 式和页面的商业逻辑分开。
2024/7/5
7
6.1 Servlet技术概述
Servlet的接口 在Servlet API中最重要的是Servlet接口(interface),所有的Servlets
都必须执行该接口,途径有: 是直接实现该接口;是通过扩展类(class) 当一个servlet接收来自客户端的调用请求,它接收两个对象: ServletRequest 可以获取到这样一些信息,如由客户端传送的阐述名称,客户端正在
程序在服务器端运行,动态地生成Web页面。与传 统的CGI和许多其他类似CGI的技术相比,Java Servlet的特点:
高效 方便 功能强大 可移植性好 节省投资
2024/7/5
3
6.1 Servlet技术概述
编译Servlet文件所需要的环境
将servlet-api.jar和jsp-api.jar加入CLASSPATH 如果不设置CLASSPATH,Java在当前目录和标
4
6.1 Servlet技术概述
开发Servlet的过程
编写Servlet代码 编写HelloServlet.java 实现如下功能:当用
户通过浏览器访问该Servlet时,该Servlet向客户 端浏览器返回一个 HTML 页面。
文件 HelloServlet.java
编译Servlet代码 利用 JDK1.3 对 Servlet 代码进行编译,其
第6章 JavaServlet
理论: Servlet技术、Servlet的应用、生命周 期和各种常用的类接口
技能 很好地处理Servlet与JSP之间的关系, 灵活应用JSP开发网站的两种模式
要求 掌握Servlet的结构、接口方法和生命 周期等概念,学会使用Servlet进行编程, 与表单交互、控制会话等
准系统库中寻找类;则将servlet-api.jar ; jspapi.jar 放在JDK安装目录下的jre\lib\ext目录下。 servlet-api.jar 、 jsp-api.jar的获取: Tomcat5.0.25版本下,在Tomcat安装目录下的 common\lib目录下。
2024/7/5
6.1 Servlet技术概述
什么是Servlet
Servlet是运行在服务器端,用来响应客户端请求的java代码模块。 Servlet并没有跟客户端的特定协议绑定,但是通常使用的是HTTP, 通常所用的Servlet指的就是“HTTP Servlet”。
Servlet在javax.servlet(基本的Servlet框架)和javax.servlet.http(为 Servlet响应HTTP请求的Servlet框架的扩展)包中作为Java的标准扩 展类使用。Servlet是一种独立于平台和协议的服务器端的Java应用程 序,可以生成动态的Web页面。
2024/7/5
12
6.5 Servlet的常用类接口
HttpServlet 通常编写的Servlet类,一般从Javax包中的HttpServlet类继承而来,
在HttpServlet中加入了一些附加的方法,这些方法可以协助处理HTTP 基 本请求,这些基本请求由HttpServlet类中的方法service()自动地调用。这 些方法有:
6.5 Servlet的常用类接口
HttpServletResponse HttpServerletResponse用来向客户端发
送响应信息。 HttpServerletResponse接口给出相应客
户端的Servlet方法,它允许Servlet设置内容 长度和回应的MIME类型,并且提供输出流的 ServletOutputStream。
相关文档
最新文档