1 / 20

第 5 章 Servlet 编程技术

第 5 章 Servlet 编程技术. 5. 内容提要. 本章主要介绍 Servlet 编程技术 介绍了 Servlet 与 JSP 的关系 Servlet 的生命周期 Servlet 的运行环境以及 Servlet 的体系结构。 着重介绍了 Servlet 的配置与执行以及如何使用 Web 程序和 Servlet 进行交互。. Servlet 简介. Servlet 是服务器端的 Java 小程序。用于响应客户机的请求。 在默认情况下, Servlet 采用一种无状态的请求 - 响应处理方式。 Servlet 代码的主要作用是为了增强 Java 服务器端功能。.

avye-pugh
Download Presentation

第 5 章 Servlet 编程技术

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第5章 Servlet编程技术 5

  2. 内容提要 • 本章主要介绍Servlet编程技术 • 介绍了Servlet与JSP的关系 • Servlet的生命周期 • Servlet的运行环境以及Servlet的体系结构。 • 着重介绍了Servlet的配置与执行以及如何使用Web程序和Servlet进行交互。

  3. Servlet简介 • Servlet是服务器端的Java小程序。用于响应客户机的请求。 • 在默认情况下,Servlet采用一种无状态的请求-响应处理方式。Servlet代码的主要作用是为了增强Java服务器端功能。

  4. Servlet概念 • Servlet是一个标准的Java类,它符合Java类的一般规则。 • 和一般Java类不同之处就在于Servlet可以处理HTTP请求。在Servlet API中提供了大量的方法,可以在Servlet中调用。

  5. Servlet与JSP的关系 • JSP是以另外一种方式实现的Servlet,Servlet是JSP的早期版本,在JSP中,更加注重页面的表现,而在Servlet中则更注重业务逻辑的实现。 • 因此,当编写的页面显示效果比较复杂时,首选是JSP。或者在开发过程中,HTML代码经常发生变化,而Java代码则相对比较固定时,可以选择JSP。而我们在处理业务逻辑时,首选则是Servlet。 • 同时,JSP只能处理浏览器的请求,而Servlet则可以处理一个客户端的应用程序请求。因此,Servlet加强了Web服务器的功能。

  6. Servlet的生命周期 • Servlet运行机制和Applet类似,Servlet是载服务器端运行的,但是Applet是在客户端运行的。Servlet是javax.servlet包中HttpServlet类的子类,由服务器完成该子类的创建和初始化。 • Servlet的生命周期主要由3个过程组成。 • 1、init()方法:服务器初始化Servlet。 • 2、service()方法:初始化完毕,Servlet对象调用该方法相应客户的请求。 • 3、destroy()方法:调用该方法消灭Servlet对象。 • 其中,init()方法只在Servlet第一次被请求加载的时候被调用一次,当有客户再请求Servlet服务时,Web服务器将启动一个新的线程,在该线程中,调用service方法相应客户的请求。

  7. Servlet的运行环境 • 调用并运行一个Servlet首先需要简单的配置,一般首先用Java编译器将Servlet文件编译成Class文件 • 然后将Class文件放到Web服务器中,最后设置Servlet的调用路径

  8. 编译 案例名称:简单的Servelet 程序名称:j5_01.java import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class j5_01 extends HttpServlet { public void init(ServletConfig config) throws ServletException {super.init(config); } public void service(HttpServletRequest reqest, HttpServletResponse response) throws IOException { PrintWriter out=response.getWriter(); response.setContentType("text/html;charset=GB2312");//设置响应的类型。 out.println("<HTML> <BODY>"); out.println("Simple servlet"); out.println("</body> </html>"); } }

  9. 编译

  10. 设置存放目录 • 将j5_01.class文件拷贝到ROOT/WEB-INF/classes目录下,然后编辑ROOT/WEB-INF下的web.xml文件,在结束标记</web-app>前面添加语句如程序web.xml文件所示 案例名称:Web配置文件 程序名称:节选自web.xml文件 <!-- JSPC servlet mappings end --> <servlet> <servlet-name>Hello</servlet-name> <servlet-class>j5_01</servlet-class> </servlet> <servlet-mapping> <servlet-name>Hello</servlet-name> <!--Notice: using http://localhost:8090/test to access this servlet--> <url-pattern>/test</url-pattern> </servlet-mapping> </web-app>

  11. 运行Servlet • 修改完毕,在浏览器中输入,“http://localhost:8090/test”,

  12. Servlet体系结构 • Servlet是创建Web应用程序的基本块。Servlet提供了一种通用的程序设计模块。 • Servlet API包含两个包:javax.servlet和javax.servlet.http包。其中javax.servlet包有两个子包用于JSP页面(javax.servlet.jsp)和JSP定制标记(javax.servlet.jsp.tagext)。

  13. Java Servlet API概述 • Servlet API在两个Java扩展包中定义:javax.servlet和javax.servlet.http包。 • 这两个包中,javax.servlet包中定义的类和接口是独立于协议的;而javax.servlet.http中包含了具体于HTTP协议的类和接口。javax.servlet.http包中的某些类或接口继承了某些javax.servlet包中的类或接口。

  14. Servlet API接口

  15. GenericServlet类和HttpServlet类 • GenericServlet类提供了Servlet接口的基本的实现,GenericServlet类中的service()方法是抽象方法,所有子类都应当实现这个方法。 • HttpServlet类扩展了GenericServlet,并且提供了Servlet接口中具体于HTTP的实现。一般用户自定义的Servlet都要扩展该类。这个类定义了如下的方法:

  16. doGet和doPost方法 • doGet和doPost方法分别对应Form表单的属性method属性,method属性有两种Get和Post。 • 利用Get方法提交的总数据量不能超过2K,否则将提交失败,利用Post方法则没有容量方面的限制

  17. 使用doGet和doPost方法 案例名称:使用doGet和doPost方法 程序名称:j5_02.htm 范例名称:使用Servlet和Web页面交互 文件名称:j5_03.java 案例名称:Web配置文件 程序名称:节选自web.xml文件

  18. JSP-Servlet页面调用 案例名称:JSP-Servlet页面调用 程序名称:servletToJsp.java 案例名称:Web配置文件 程序名称:节选自web.xml文件 案例名称:JSP-Servlet页面调用 程序名称:hello.jsp

  19. 小结 • 本章主要介绍Servlet编程技术 • 介绍了Servlet与JSP的关系 • Servlet的生命周期 • Servlet的运行环境以及Servlet的体系结构。 • 着重介绍了Servlet的配置与执行以及如何使用Web程序和Servlet进行交互。

  20. 本章习题 • 5-1. 简述Servlet和JSP的关系。 • 5-2. 简述Servlet的生命周期。(企业笔试题) • 5-3. 简述HttpSession接口的功能和使用方法。(企业笔试题) • 5-4. 完成Servlet的编译、配置和运行。(上机完成) • 5-5. 编写一个HTML文件,利用Servelt的doPost方法实现Form表单内容的读取。(上机完成)(企业笔试题) • 5-6. 图示运行Servlet的目录结构。(企业笔试题)

More Related