Java网络编程原理与JSP Web开发核心技术 教学课件 ppt 作者 马晓敏 肖 明 姜远明 齐永波_ 07第七章JSP核心技术之Java Servlet

上传人:E**** 文档编号:89389383 上传时间:2019-05-24 格式:PPT 页数:40 大小:1,008.50KB
返回 下载 相关 举报
Java网络编程原理与JSP Web开发核心技术 教学课件 ppt 作者 马晓敏 肖 明 姜远明 齐永波_ 07第七章JSP核心技术之Java Servlet_第1页
第1页 / 共40页
Java网络编程原理与JSP Web开发核心技术 教学课件 ppt 作者 马晓敏 肖 明 姜远明 齐永波_ 07第七章JSP核心技术之Java Servlet_第2页
第2页 / 共40页
Java网络编程原理与JSP Web开发核心技术 教学课件 ppt 作者 马晓敏 肖 明 姜远明 齐永波_ 07第七章JSP核心技术之Java Servlet_第3页
第3页 / 共40页
Java网络编程原理与JSP Web开发核心技术 教学课件 ppt 作者 马晓敏 肖 明 姜远明 齐永波_ 07第七章JSP核心技术之Java Servlet_第4页
第4页 / 共40页
Java网络编程原理与JSP Web开发核心技术 教学课件 ppt 作者 马晓敏 肖 明 姜远明 齐永波_ 07第七章JSP核心技术之Java Servlet_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《Java网络编程原理与JSP Web开发核心技术 教学课件 ppt 作者 马晓敏 肖 明 姜远明 齐永波_ 07第七章JSP核心技术之Java Servlet》由会员分享,可在线阅读,更多相关《Java网络编程原理与JSP Web开发核心技术 教学课件 ppt 作者 马晓敏 肖 明 姜远明 齐永波_ 07第七章JSP核心技术之Java Servlet(40页珍藏版)》请在金锄头文库上搜索。

1、Java网络编程原理与JSP Web核心开发技术,2,第七章 Java Servlet,7.1 Servlet 概述 7.2 编写简单的Servlet 7.3 Servlet应用,3,7.1 Servlet 概述,7.1.1 什么是Servlet 7.1.2 Servlet的特点 7.1.3 Servlet的生命周期 7.1.4 Servlet API简介,4,7.1 Servlet 概述,7.1.1 什么是Servlet Java Servlet是运行在服务器端的组件,是一个标准的Java类,用来扩展服务器的性能。 Servlet是JSP的基础,JSP页面在Web引擎中运行前会被编译器先转换

2、为Servlet,再编译成字节码,因此JSP页面与Servlet是一一对应的。一般情况下,JSP注重页面的表现,而Servlet注重业务逻辑的实现。,5,7.1 Servlet 概述,7.1.2 Servlet的特点 Servlet运行在一个Web容器中,由容器管理并编译成平台无关的字节代码。Servlet的主要功能在于交互式地浏览和修改数据,生成动态Web内容。当客户端发送请求至服务器端时,服务器将请求信息发送给Servlet,Servlet生成响应内容并将其传给服务器,最后服务器将响应返回给客户端。 Servlet程序与传统的CGI技术和许多其他类似CGI的技术相比,具有更高效率、更容易使

3、用、功能更强大、更好的移植性、更节省投资等特点。,6,7.1 Servlet 概述,7.1.3 Servlet的生命周期 Servlet由Web服务器引擎负责编译执行,当启动Web服务器或者是客户机第一次请求服务时,可以自动加载Servlet。当Web服务器中的Servlet被请求访问时,服务器将启动一个线程来响应,在Servlet中要接受HTTP请求并作相应处理。加载后,Servlet继续运行等待其他客户机的请求。 一个Servlet的生命周期由部署Servlet的容器来控制,可以将其生命周期分为以下几个阶段: 1、装载类: 2、创建实例 3、初始化 4、服务 5、销毁,7,7.1 Serv

4、let 概述,Servlet生命周期示意图,8,7.1 Servlet 概述,7.1.4 Servlet API简介 javax.servlet和javax.servlet.http包为编写Servlet提供了接口和类。所有的Servlet都必须实现Servlet接口,该接口定义了生命周期方法。当实现一个通用的服务时,可以使用或扩展由Java Servlet API提供的GenericServlet类。 HttpServlet类提供了一些方法,诸如doGet()和doPost(),以用于处理特定于HTTP协议的服务。,9,7.1 Servlet 概述,7.1.4 Servlet API简介 1

5、、javax.servlet.Servlet接口 提供Servlet生命周期方法。 init(ServletConfig config):用于初始化Servlet。 destroy():用于销毁Servlet,当servlet将要卸载时由servlet引擎调用。 getServletInfo():返回描述servlet的一个字符串。 getServletConfig():获得Servlet配置相关信息。 service():运行应用程序逻辑的入口点,处理request对象中描述的请求,使用response对象返回请求结果。,10,7.1 Servlet 概述,7.1.4 Servlet API

6、简介 2、javax.servlet.GenericServlet类 对Servlet接口直接实现,同时,还实现了ServletConfig接口。 getInitParameter(String name):返回具有指定名称的初始化参数值。 getInitParameterNames() :返回此servlet已编码的所有初始化参数的一个枚举类型值。 getServletName() :返回在Web应用发布描述器(web.xml)中指定的servlet的名字。 getServletConfig():返回传递到init()方法的ServletConfig对象。 service (Request

7、request,Response response):由servlet引擎调用,是GenericServlet中唯一的抽象方法,也是唯一必须被子类所覆盖的方法。,11,7.1 Servlet 概述,7.1.4 Servlet API简介 3、javax.servlet.http.HttpServlet类 HttpServlet 类通过调用指定到Http请求的方法实现service(),即对HEAD、GET、POST等请求,分别调用doHead()、doGet()、doPost()等方法,将请求和响应对象置入其HTTP指定子类。 doGet (HttpServletRequest request

8、,HttpServletResponse response):支持Http Get请求。 doPost(HttpServletRequest request, HttpServletResponse response):支持Http Post请求。,12,7.1 Servlet 概述,7.1.4 Servlet API简介 4、javax.servlet.ServletRequest接口 封装了客户端请求的细节,主要功能包括:找到客户端的主机名和IP地址、检索请求参数、取得和设置属性、取得输入和输出流等。 getAttribute(String name) 返回具有指定名字的请求属性。 get

9、CharacteEncoding() 返回请求所用的字符编码。 getParameter(String name) 返回指定输入参数,如果不存在,返回null。 getProtocol() 返回请求使用协议的名称和版本。 setAttribute(String name,Object obj) 以指定名称保存请求中指定对象的引用。 removeAttribute(String name) 从请求中删除指定属性,13,7.1 Servlet 概述,7.1.4 Servlet API简介 5、javax.servlet.http.HttpServletRequest类 主要功能包括:读取和写入HT

10、TP头标、取得和设置cookies、取得路径信息、标识HTTP会话等。 Cookie getCookies() 返回与请求相关cookie的一个数组。 String getHeader(String name) 返回指定的HTTP头标指。 Enumeration getHeaderNames() 返回请求给出的所有HTTP头标名称的权举值。 Enumeration getHeaders(String name) 返回请求给出的指定类型的所有HTTP头标的名称的枚举值。 HttpSession getSession() 调用getSession(true)的简化版。 HttpSession ge

11、tSession(boolean create) 返回当前HTTP会话,如果不存在,则创建一个新的会话,create参数为true。,14,7.1 Servlet 概述,7.1.4 Servlet API简介 6、javax.servlet.ServletResponse接口 对servlet生成的结果进行封装,由servlet引擎创建。 String getCharacterEncoding() 返回响应使用字符解码的名字,默认为ISO-8859-1 。 OutputStream getOutputStream()返回用于将返回的二进制输出写入客户端的流。 void setContentLe

12、ngth(int length) 设置内容体的长度。 void setContentType(String type) 设置内容类型。,15,7.1 Servlet 概述,7.1.4 Servlet API简介 7、javax.servlet.http.HttpServletResponse类 HttpServletResponse提供设置状态码、状态信息和响应头标的功能。主要定义了以下几种方法: void addCookie(Cookie cookie) 将一个Set-Cookie头标加入到响应。 void setHeader(String name,String value) 设置具有指定

13、名字和取值的一个响应头标。 sendRedirect(String url):把响应发送到另一页面或者Servlet进行处理。 void setContextType(String type)设置响应的MIME类型。 SetCharacterEncoding(String charset):设置响应的字符编码类型。 setContentLength:设置Content-Length头。,16,7.1 Servlet 概述,7.1.4 Servlet API简介 8、javax.servlet.ServletConfig接口 该接口代表了对Servlet的配置,Servlet配置信息包括Serv

14、let的名字、初始化参数和Servlet上下文,这些配置信息放在web.xml文件中。主要定义了以下几种方法: getInitParameter(String name)返回特定名字的初始化参数。 getInitParameterNames()返回所有初始化参数的名字。 getServletContext()返回Servlet的上下文对象的引用。,17,7.1 Servlet 概述,7.1.4 Servlet API简介 9、javax.servlet.ServletContext接口 该接口代表Servlet容器上下文,Servlet上下文的作用主要包括:在调用期间保存和检索属性,并与其他S

15、ervlet共享这些属性,Servlet上下文的引用可以通过ServletConfig对象的getServletContext()方法得到。 getAttribute (String name) 返回servlet上下文中名称为name的属性。 setAttribute(String name,Object obj) 在servlet上下文中设置一个属性,属性的名字为name,值为obj对象。 getAttributeNames() 返回保存在servlet上下文中所有属性名字的枚举。 ServletContext getContext(String uripath) 返回映射到另一URL的s

16、ervlet上下文。 String getInitParameter(String name) 返回指定上下文范围的初始化参数值。 void removeAttribute(String name) 从servlet上下文中删除指定属性。,18,7.1 Servlet 概述,7.1.4 Servlet API简介 10、javax.servlet.http.HttpSession接口 提供了用于存储和检索对象的方法。提供了一个会话 ID关键字,一个参与会话行为的客户端在同一会话的请求中存储和返回它。 Object getAttribute(String name) 将会话中一个对象保存为指定名字,返回或删除前面保存的此名称对象。 void setAttribute(String name,Object value) void removeAttribute(String name) Enumeration getAttributeName() 返回捆绑到当前会话的所有属性名的枚举值。 void invalidate() 使得会话被终

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号