JavaEE开发技术与案例教程 作者 刘彦君 金飞虎 第3章 JavaServlet.pptVIP

JavaEE开发技术与案例教程 作者 刘彦君 金飞虎 第3章 JavaServlet.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Servlet的执行过程: 首先根据在地址栏输入的路径信息找到servlet-mapping中url-pattern对应的servlet-name,再对应找到servlet中该servlet-name对应的servlet-class类,从而实例化该servlet并执行。 在本例中的url-pattern为/servlet/HelloWorld(此路径为虚拟路径,通常的写法为/servlet/类名)所以在地址栏中输入:8080/servlet/HelloWorld 3.3 Servlet的生命周期 每个Servlet都有一个生命周期,该生命周期由创建Servlet实例的Servlet容器进行控制。所谓Servlet生命周期就是指Servlet容器创建Servlet实例后响应客户请求直至销毁的全过程。 Servlet的生命周期可以分为四个阶段:类装载及实例创建阶段、实例初始化阶段、服务阶段以及实例销毁阶段。 创建servlet实例 初始化servlet实例 Servlet可服务状态 销毁servlet 卸载 (初始化失败) servlet处理请求并将结果返回给客户端 1.类装载及实例创建 ??? ? 默认情况下,Servlet实例是在接受第一次请求时进行创建,而且对以后的请求进行复用。 如果Servlet实例需要在初始化时完成一些复杂的工作,可以通过配置在服务器启动时就创建实例:声明servlet标签中添加load- on-startup1/load-on-startup标签。 其中load-on-startup标记的值必须为数值类型,表示Servlet的装载顺序,取值及含义如下: 正数或零:该Servlet必须在应用启动时装载,容器必须保证数值小的Servlet先装载 2.初始化Servlet?实例init() ?? ? 一旦Servlet实例被创建,将会调用Servlet的init(ServletConfig config)方法。init()方法在整个Servlet生命周期中只会调用一次,如果初始化成功则进入可服务状态,准备处理用户的请求,否则卸载该servlet实例。 在init()方法中包含了一个参数config,主要用于传递Servlet的配置信息,比如初始化参数等,该对象由服务器进行创建。 3.服务 services() ? ??一旦Servlet实例成功创建并且初始化,该Servlet实例就可以被服务器用来服务于客户端的请求并生成响应。在服务阶段,应用服务器会调用该实例的 service(ServletRequest request, ServletResponse response)方法,其中request对象和response对象由服务器创建并传给Servlet实例。request对象封装了客户端发往服务器端的信息,response对象封装了服务器发往客户端的信息。 ?? ? 4.销毁 destory() ?? ? ?当Servlet容器将决定结束某个Servlet时,将会调用destory()方法,在destory方法中进行资源释放。一旦destory()方法被调用,Servlet容器将不会再发送任何请求给这个实例。若Servlet容器需再次使用该Servlet,需重新实例化该Servlet实例。 3.4 Servlet API常用接口和类 3.4.1 ServletConfig接口 属于javax.servlet包,是一个由Servlet容器使用的Servlet配置对象,用于在Servlet执行init()初始化方法时向它传递信息。 方法名 方法说明 public String getInitParameter(String name) 返回包含指定初始化参数的值的 String,如果参数不存在,则返回 null。 public Enumeration getInitParameterNames() 以 String 对象的枚举形式返回 servlet 的初始化参数的名称,如果 servlet 没有初始化参数,则返回一个空的枚举对象。 public ServletContext getServletContext() 返回对调用者在其中执行操作的 ServletContext 的引用。 public String getServletName() 返回当前Servlet实例的名称。 javax.servlet.ServletConfig接口的主要方法 3.4.2 GenericServlet类 GernericServlet类属于javax.servlet包,用于定义一般的、与协议无关的Servlet。 GenericServlet 实现了 Servlet 和 S

您可能关注的文档

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档