电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

jsp程序设计入门 沈泽刚、秦玉平 主编的java web 第二版 第02章 Servlet技术模型

  • 资源ID:53779847       资源大小:1MB        全文页数:106页
  • 资源格式: PPT        下载积分:20金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要20金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

jsp程序设计入门 沈泽刚、秦玉平 主编的java web 第二版 第02章 Servlet技术模型

第2章,Servlet技术模型,此文档下载自官网,除本页,其余未修改,可直接删除本页,本章内容,2.1 Servlet AP 2.2 Servlet生命周期 2.3 分析请求 2.4 发送响应 2.5 Web应用程序及结构 2.6 部署描述文件 2.7 WebServlet和WebInitParam注解 2.8 ServletConfig接口,Servlet是Java Web应用开发的基础,Servlet API定义了若干接口和类。 Servlet规范提供了一个标准的,平台独立的框架实现在Servlet和容器之间的通信。该框架是由一组Java接口和类组成的,它们称为Servlet API。,2.1 Servlet API,2.1 Servlet API,Servlet 3.0 API由下面4个包组成: javax.servlet包,定义了开发独立于协议的服务器小程序的接口和类。 javax.servlet.http包,定义了开发采用HTTP协议通信的服务器小程序的接口和类。 javax.servlet.annotation包,定义9个注解类型和2个枚举类型。 javax.servlet.descriptor包,定义了访问Web应用程序配置信息的类型。,2.1.1 javax.servlet包,2.1.1 javax.servlet包,1. Servlet接口,Servlet接口是Servlet API中的核心接口,每个Servlet必须直接或间接实现该接口。该接口定义了如下5个方法。 public void init(ServletConfig config) public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException public ServletConfig getServletConfig() public String getServletInfo() public void destroy(),2. ServletConfig接口,ServletConfig接口为用户提供了有关Servlet配置信息。 Servlet配置包括Servlet名称、Servlet上下文对象、Servlet初始化参数等。,3. GenericServlet类,GenericServlet抽象类实现了Servlet接口和ServletConfig接口,提供了Servlet接口中除了service()方法外的所有方法的实现,同时增加了几个支持日志的方法。可以扩展该类并实现service()方法来创建任何类型的Servlet。,4. ServletRequest接口,ServletRequest接口是独立于任何协议的请求对象,定义了获取客户请求信息的方法,如getParameter()、getProtocol()、getRemoteHost()等。,5. ServletResponse接口,ServletResponse接口是独立于任何协议的响应对象,定义了向客户发送响应的方法,如setContentType()方法、sendRedirect()方法、getWriter()方法等。,该包提供创建使用HTTP协议的Servlet所需要的接口和类。 该包共定义8个接口和7个类,其中某些接口和类扩展了javax.servlet包中对应的接口和类来实现对HTTP协议的支持。,2.1.2 javax.servlet.http包,2.1.2 javax.servlet.http包,2.1.2 javax.servlet.http包,Servlet API的层次结构,1. HttpServlet类,HttpServlet抽象类用来实现针对HTTP协议的Servlet,它扩展了GenericServlet类。 在HttpServlet类中增加了一新的service()方法,格式如下:protected void service (HttpServletRequest, HttpServletResponse)throws ServletException, IOException 是Servlet向客户提供服务的一个方法,我们编写的Servlet可以覆盖该方法。,1. HttpServlet类,此外,在HttpServlet中针对不同的HTTP请求方法定义了不同的处理方法,如处理GET请求的doGet()方法格式如下:protected void doGet(HttpServletRequest, HttpServletResponse)throws ServletException,IOException 通常,我们编写的Servlet覆盖doGet()方法或doPost()方法。,2. HttpServletRequest接口,HttpServletRequest接口扩展了ServletRequest接口并提供了针对HTTP请求操作方法,如定义了从请求对象中获取HTTP请求头、Cookie等信息的方法。,3. HttpServletResponse接口,HttpServletResponse接口扩展了ServletResponse接口并提供了针对HTTP的发送响应的方法。它定义了为响应设置如HTTP头、Cookie信息的方法。,2.2 Servlet生命周期,Servlet作为一种在容器中运行的组件,有一个从创建到销毁的过程,这个过程被称为Servlet生命周期。 Servlet生命周期包括以下几个阶段: 加载和实例化Servlet类, 调用init()方法初始化Servlet实例, 一旦初始化完成,容器从客户收到请求时就将调用它的service()方法, 最后容器在Servlet实例上调用destroy()方法使它进入销毁状态。,2.2 Servlet生命周期,2.2.1 加载和实例化Servlet,对一个Servlet,可能在Web容器启动时或第一次被访问时加载到容器中。对每个Servlet,容器使用Class.forName()方法对其加载并实例化。 容器创建了Servlet实例后就进入生命周期阶段,Servlet生命周期方法包括 init()方法 service()方法 destroy()方法,2.2.2 初始化Servlet,容器创建Servlet实例后,将调用init(ServletConfig)方法初始化Servlet。 调用init(ServletConfig)方法后,容器将调用无参数的init()方法,之后Servlet就完成初始化。在Servlet生命周期中init()方法仅被调用一次。,2.2.3 为客户提供服务,在Servlet实例初始化后,它就准备为客户提供服务。 当容器接收到对Servlet的请求时,容器根据请求中的URL找到正确的Servlet,首先创建两个对象(请求和响应),然后创建一个新的线程,在该线程中调用service()方法,同时将请求对象和响应对象作为参数传递给该方法。,Servlet使用响应对象(response)获得输出流对象,调用有关方法将响应发送给客户浏览器。 之后,线程将被销毁或者返回到容器管理的线程池。请求和响应对象已经离开其作用域,也将被销毁。最后客户得到响应。,2.2.3 为客户提供服务,2.2.4 销毁和卸载Servlet,当容器决定不再需要Servlet实例时,它将在Servlet实例上调用destroy()方法,Servlet在该方法中释放资源,如它在init()方法中获得的数据库连接。一旦该方法被调用,Servlet实例不能再提供服务。 一旦Servlet实例被销毁,它将作为垃圾被回收。如果Web容器关闭,Servlet也将被销毁和卸载。,2.3 分析请求,HTTP消息是客户向服务器的请求或者服务器向客户的响应。 HTTP消息的各部分,2.3.1 HTTP请求结构,2.3.1 HTTP请求结构,由客户向服务器发出的消息叫做HTTP请求。 1. 请求行 HTTP的请求行由三部分组成:方法名、请求资源的URI和HTTP版本。这三部分由空格分隔。 2. 请求头 请求行之后的内容称为请求头(request header),它可以指定请求使用的浏览器信息、字符编码信息及客户能处理的页面类型等。,接下来是一个空行。 空行的后面是请求的数据。 3. HTTP的请求方法 请求行中的方法名指定了客户请求服务器完成的动作。,2.3.1 HTTP请求结构,4. GET方法和POST方法,在所有的HTTP请求方法中,GET方法和POST方法是两种最常用的方法。 GET方法用来检索资源。它的含义是“获得(get)由该URI标识的资源”。 POST方法用来向服务器发送需要处理的数据,它的含义是“将数据发送(post)到由该URI标识的主动资源”。,GET和POST方法的比较,2.3.2 发送HTTP请求,在客户端如果发生下面的事件,浏览器就向Web服务器发送一个HTTP请求。 用户在浏览器的地址栏中输入URL并按回车键。 用户点击了HTML页面中的超链接。 用户在HTML页面中添写一个表单并提交。,2.3.3 处理HTTP请求,在HttpServlet类中,除定义了service()方法为客户提供服务外,还针对每个HTTP方法定义了相应的doXxx()方法,一般格式如下: protected void doXxx (HttpServletRequest,HttpServletResponse) throws ServletException, IOException;,2.3.4 分析请求,客户发送给服务器的请求信息被封装在HttpServletRequest对象中,其中包含了由浏览器发送给服务器的数据,这些数据包括请求参数、客户端有关信息等。,1. 检索请求参数,请求参数是随请求一起发送到服务器的数据,它是以名/值对的形式发送的。可以使用ServletRequest接口中定义的方法检索由客户发送的参数 public String getParameter(String name) 返回由name指定的请求参数值,如果指 的参数不存在,则返回null值。使用该方 必须确信指定的参数只有一个值。,1. 检索请求参数,public String getParameterValues(String name):返回指定参数name所包含的所有值,返回值是一个String数组。如果指定的参数不存在,则返回null值。,1. 检索请求参数,public Enumeration getParameterNames():返回一个Enumeration对象,它包含请求中所有的请求参数名,元素是String类型的。如果没有请求参数,则返回一个空的Enumeration对象。 public Map getParameterMap():返回一个包含所有请求参数的Map对象,该对象以参数名作为键、以参数值作为值。,请求参数传递的方法,(1)通过表单指定请求参数,每个表单域可以传递一个请求参数,这种方法适用于GET请求和POST请求。 (2)通过查询串指定请求参数,将参数名和值附加在请求的URL后面,这种方法只适用于GET请求。 程序2.1 login.jsp 程序2.2 LoginServlet.java,2. 检索客户端有关信息,在HttpServletRequest接口中还定义了下面常用的方法用来检索客户端有关信息:public String getMethod()public String getRemoteHost()public String getRemoteAddr() public int getRemotePort(),public String getProtocol() public String getRequestURI()public String getQueryString() public String getContentType() public String getCharacterEncoding() 程序2.3 ClientInfoServlet.java,

注意事项

本文(jsp程序设计入门 沈泽刚、秦玉平 主编的java web 第二版 第02章 Servlet技术模型)为本站会员(101****457)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.