servlet生命周期的理解
额。。总的来说,servlet的生命周期可以分为四个阶段:
1.加载和实例化。2,初始化。3,请求处理。4,服务终止。至于都是生命意思,容我慢慢道来:
1加载和实例化:Servlet容器负责加载和实例化Servlet。当Servlet容器启动时,或者在容器检测到需要这个Servlet来响应第一个请求时,创建Servlet实例。
2初始化:在Servlet实例化之后,容器将调用Servlet的init()方法初始化这个对象。初始化的目的是为了让Servlet对象在处理客户端请求前完成一些初始化的工作,如建立数据库的连接,获取配置信息等。对于每一个Servlet实例,init()方法只被调用一次。
3请求处理:Servlet容器调用Servlet的service()方法对请求进行处理。要注意的是,在service()方法调用之前,init()方法必须成功执行。在service()方法中,Servlet实例通过ServletRequest对象得到客户端的相关信息和请求信息,在对请求进行处理后,调用ServletResponse对象的方法设置响应信息。
4服务终止:当容器检测到一个Servlet实例应该从服务中被移除的时候,容器就会调用实例的destroy()方法,以便让该实例可以释放它所使用的资源, 保存数据到持久存储设备中。当需要释放内存或者容器关闭时,容器就会调用Servlet实例的destroy()方法。在destroy()方法调用之 后,容器会释放这个Servlet实例,该实例随后会被Java的垃圾收集器所回收。如果再次需要这个Servlet处理请求,Servlet容器会创建 一个新的Servlet实例。
转载于:https://www.cnblogs.com/jessonlv/archive/2011/08/18/4388076.html
servlet生命周期的理解相关推荐
- 对Servlet生命周期的简单理解
一.生命周期: 1.顾名思义,对servlet来说,它的生命周期指的就是从创建直到毁灭的整个过程. 其流程可简化为: Servlet 初始化后调用 init () 方法.(该方法只在最开始只调用一次) ...
- Servlet第一篇【介绍Servlet、HTTP协议、WEB目录结构、编写入门Servlet程序、Servlet生命周期】...
tags: Servlet 什么是Serlvet?# Servlet其实就是一个遵循Servlet开发的java类.Serlvet是由服务器调用的,运行在服务器端. 为什么要用到Serlvet? 我们 ...
- Servlet 生命周期介绍
在面试的时候. 有时会被问到这个问题: 请描述一下Servlet的生命周期. 其实面试官就是想问你1个Servlet何时被创建, 何时被调用等.... 本文就是详细解答这个问题的. 总体流程图 上面的 ...
- Servlet第一篇【介绍Servlet、HTTP协议、WEB目录结构、编写入门Servlet程序、Servlet生命周期】
什么是Servlet? Servlet其实就是一个遵循Servlet开发的java类.Servlet是由服务器调用的,运行在服务器端. 为什么要用到Servlet? 我们编写java程序想要在网上实现 ...
- Web容器和Servlet生命周期
为何需要Web容器 Web服务器本身主要用于支持http协议,包括监听和相应http请求.web服务器一般处理静态的请求,如文件系统中的静态文件.web容器则是为web相关的组件提供运行环境,可以从' ...
- 【JavaLearn】#(23)JSP相关语法、HTTP协议、Servlet介绍、Servlet生命周期、请求和响应、相对路径、转发和重定向
1. JSP简单内容 1.1 JavaEE JavaEE 包含JSP JavaEE是一个开发分布式企业级应用的规范和标准.JavaEE包含之前学过的所有内容(JavaSE) 真正开发中,很少使用Jav ...
- 详解servlet生命周期
详解servlet 生命周期(转载) Servlet 有良好的生存期的定义,包括如何加载.实例化.初始化.处理客户端请求以及如何被移除.这个生存期由 javax.Servlet.Servlet 接口的 ...
- servlet生命周期(很有用)
Servlet简介及其生命周期详解简介Servlet生命周期,即阐述Servlet从产生到毁灭的整个过程. 在Servlet产生到消亡的过程中,有三个生命周期函数,初始化方法init(),处理客户请求 ...
- Servlet生命周期与工作原理
Servlet生命周期分为三个阶段: 1,初始化阶段 调用init()方法 2,响应客户请求阶段 调用service()方法 3,终止阶段 调用destroy()方法 Servlet初始化阶段: 在 ...
最新文章
- 标准自编码器(TensorFlow实现)
- Tensorflow遇到的问题InvalidArgumentError: Graph execution error:2 root error(s) found.解决方法
- 使用ISA实现用户级验证(1~3篇)
- 漫步数学分析六——聚点
- java volatile有什么用_深入解析Java中volatile关键字的作用
- 微软8月补丁星期二值得关注的几个0day、几个严重漏洞及其它
- SQLServer启动和关闭bat脚本
- CxImage图像库的使用
- 计算机主机外接电源,电脑DIY必修课,电源接口详解
- 嵌入式软件开发的特点和流程
- 树莓派触摸屏校准以及QT触摸屏相关问题解决
- 【CSS3】C3动画总结
- 13-4Happy Mid-Autumn Festival
- TI CC2530 学习笔记-13-NewBit-CC2530-ADC-内部温度传感器
- 计算机内存错误 要降频,windows10系统出现内存自动降频的解决方法
- Win8.1 取消开机密码
- sql中的模糊查询及字段前加N的作用
- 极力推荐的微信小程序,超级实用,一定要收藏
- Excel如何设置下拉列表
- 【codeforces85D】
热门文章
- 2020年华东师范大学软件工程考研总结
- 全国首例 | 国产ECMO在阜外医院成功救治一名患者
- 电脑无法识别u盘怎么办
- 解决idea运行Tomcat报错:Unable to ping server at localhost:1099
- 思科路由器:开启telnet和ssh远程登陆
- 桌面应用程序的版本更新,升级
- 北京市:不允许高校学生校外租房
- Springboot毕设项目高校社团信息管理系统gtt2u(java+VUE+Mybatis+Maven+Mysql)
- 前端网站-文档、工具
- Ubuntu16.04下Opencv3.4.5的卸载与带cuda安装