servlet的定义及其生命周期.doc

servlet的定义及其生命周期.doc

ID:57690537

大小:36.00 KB

页数:2页

时间:2020-09-01

servlet的定义及其生命周期.doc_第1页
servlet的定义及其生命周期.doc_第2页
资源描述:

《servlet的定义及其生命周期.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、servlet的定义及其生命周期Servlet的生命周期定义了一个Servlet如何被加载、初始化,以及它怎样接收请求、响应请求、提供服务。   在代码中,Servlet生命周期由接口javax.servlet.Servlet定义。所有的JavaServlet必须直接或间接地实现javax.servlet.Servlet接口,这样才能在ServletEngine上运行。ServletEngine提供networkService,响应MIMErequest,运行ServletContainer。javax.servlet.Servlet接口定义了一些方法,在Servlet的生命周期中,

2、这些方法会在特定时间按照一定的顺序被调用。如下图所示。                                                       Servlet的生命周期  Servlet如何被加载(Load)、被实例化(Instantiated)   ServletEngine负责实例化和加载Servlet,这个过程可以在ServletEngine加载时执行,可以在Servlet响应请求时执行,也可以在两者之间的任何时候执行(配置为loadonstart up的servlet是在容器启动时被加载的)。   Servlet如何被初始化(Initialized)   

3、ServletEngine加载好Servlet后,必须要初始化它。初始化时Servlet可以从数据库里读取初始数据,建立JDBCConnection,或者建立对其他有价值的资源的引用。   在初始化阶段,Init()方法被调用。这个方法在javax.servlet.Serlet接口中定义。Init()方法以一个Servlet配置文件(ServletConfig型)为参数。Servletconfiguration对象由ServletEngine实现,可以让Servlet从中读取一些name-value对的参数值。ServletConfig对象还可以让Servlet接受一个Servlet

4、Context对象。   Servlet如何处理请求   Servlet被初始化以后,就处于能响应请求的就绪状态。每个对Servlet的请求由一个ServletRequest对象代表。Servlet给客户端的响应由一个ServletResponse对象代表。当客户端有一个请求时,ServletEngine将ServletRequest和ServletResponse对象都转发给Servlet,这两个对象以参数的形式传给Service方法。这个方法由javax.servlet.Servlet定义并由具体的Servlet实现。   Servlet还可以实现ServletRequest和S

5、ervletResponse接口。ServletRequest接口可以让Servlet获取客户端请求中的参数,如formdata、request信息、协议类型,等等。Servlet可以从ServletInputStream流中读取request数据。ServletResponse接口允许Servlet设置responseheaders和statuscodes。实现这个接口可以使Servlet能访问ServletOutputStream流用来向客户端返回数据。   Servlet如何被释放   ServletEngine没有必要在Servlet生命周期的每一段时间内都保持Servlet

6、的状态。ServletEngine可以随时随意使用或释放Servlet。因此,你不能依赖Servletclass或其成员存储信息。当ServletEngine判断一个Servlet应当被释放时(比如说Engine准备Shutdown或需要回收资源),Engine必须让Servlet能释放其正在使用的任何资源,并保存持续性的状态信息。这些可以通过调用Servlet的destroy方法实现。在ServletEngine释放一个Servlet以前,必须让其完成当前实例的service方法或是等到timeout(如果Engine定义了timeout)。当Engine释放一个Servlet以后

7、,Engine将不能再将请求转发给它,Engine必须彻底释放该Servlet并将其标明为可回收的(给garbagecollection)。   在ServletAPI中最重要的是Servletinterface。所有的Servlets执行这个interface的方式有很多种:或者是直接的,或者通过extending这个class执行它,如HttpServlet。这个Servletinterface提供并安排Servlet与客户端联系的方法。Servlet

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。