Servlet的生命周期
2014-01-08 09:32
337 查看
Servlet生命周期相关的三个方法:
init()
service()
destory()
1.Servlet在创建时,会调用init()方法,该方法在整个生命周期中只调用一次。Servlet由Web容器创建:如果在web.xml中配置了<load-on-startup>元素,则在Web应用启动时自动建对应的Servlet实例;否则Servlet将在首个需要它处理的请求到来时被创建。
2.Servlet的service()方法用来处理请求,其参数为Request和Response对象。对于HttpServlet,该方法中包含了doGet()和doPost()方法,会根据请求类别得到调用,并通过Response对象生成响应结果。Servlet是单例模式,由一个实例来处理多个请求。处理时采用多线程模式,且不是线程安全的。如果定义了Servlet的成员变量(即JSP的<%! %>变量声明),可以由不同的请求修改。因此所有操作都要限制在service()方法中进行,尽量不要在servlet中定义类变量。
3.Servlet对象在销毁实例时,会调用destory()方法以释放资源,该方法在整个生命周期中也只调用一次。当Web应用关闭,或者该Servlet代码被修改时该方法将被Web容器调用。
参考1:http://blog.csdn.net/happyangelling/article/details/6119509
参考2:http://www.cnblogs.com/cuiliang/archive/2011/10/21/2220671.html
init()
service()
destory()
1.Servlet在创建时,会调用init()方法,该方法在整个生命周期中只调用一次。Servlet由Web容器创建:如果在web.xml中配置了<load-on-startup>元素,则在Web应用启动时自动建对应的Servlet实例;否则Servlet将在首个需要它处理的请求到来时被创建。
2.Servlet的service()方法用来处理请求,其参数为Request和Response对象。对于HttpServlet,该方法中包含了doGet()和doPost()方法,会根据请求类别得到调用,并通过Response对象生成响应结果。Servlet是单例模式,由一个实例来处理多个请求。处理时采用多线程模式,且不是线程安全的。如果定义了Servlet的成员变量(即JSP的<%! %>变量声明),可以由不同的请求修改。因此所有操作都要限制在service()方法中进行,尽量不要在servlet中定义类变量。
3.Servlet对象在销毁实例时,会调用destory()方法以释放资源,该方法在整个生命周期中也只调用一次。当Web应用关闭,或者该Servlet代码被修改时该方法将被Web容器调用。
参考1:http://blog.csdn.net/happyangelling/article/details/6119509
参考2:http://www.cnblogs.com/cuiliang/archive/2011/10/21/2220671.html
相关文章推荐
- Servlet编程:(2)Servlet的生命周期
- 【一】Servlet 生命周期
- servlet生命周期的理解
- 《Servlet与JSP核心编程》读书笔记——servlet生命周期
- 说出Servlet的生命周期,并说出Servlet和CGI的区别
- java_servlet执行流程和生命周期
- Servlet执行流程和生命周期
- Servlet开发基础知识—运行过程与生命周期
- servlet的执行原理与生命周期(转)
- JavaWeb Servlet 生命周期
- javaWeb之Servlet的工作原理与生命周期
- servlet的定义及其生命周期
- Servlet生命周期
- Servlet 生命周期
- Servlet 生命周期测试程序
- JSP/Servlet的生命周期
- 什么是Servlet,Servlet的作用,生命周期,如何创建、配置Servlet
- Servlet--生命周期
- Servlet生命周期中的service方法分析
- Servlet生命周期