jsp javascript学习的网站编程网站http://c.biancheng.net/jsp2/life-cycle.html
编程网站:JSP生命周期(图解) (biancheng.net)
http://c.biancheng.net/jsp2/life-cycle.html
JSP生命周期(图解)
JSP 生命周期定义了 JSP 从创建到销毁的整个过程。这类似于 Servlet 生命周期,不同的是,JSP 需要先被编译成 Servlet。
JSP 生命周期阶段如下:
一般情况下,程序只初始化一次。与 Servlet init 方法一样,我们通常在 jspInit() 方法中初始化数据库连接、打开文件。
JSP 页面完成初始化后,JSP 将会调用 _jspService() 方法。
_jspService() 以 HttpServletRequest 对象和 HttpServletResponse 对象作为方法参数,如下所示:
JSP 的 _jspService() 方法根据 request 来生成相应的 response,并且它还负责生成对 HTTP 方法的响应,即 GET、POST、DELETE 等。
jspDestroy() 方法等效于 Servlet 中的 destroy() 方法。如果您需要自定义 JSP 的销毁内容,可以重写 jspDestroy() 方法。
jspDestroy() 方法具有以下形式。
通常我们在 jspDestroy() 方法中释放数据库连接、关闭打开的文件。
JSP 生命周期阶段如下:
- 编译
- 初始化(容器调用 jspInit() 方法)
- 执行(容器调用 _jspService() 方法)
- 销毁(容器调用 jspDestroy() 方法)

1. JSP编译
当浏览器请求 JSP 时,JSP 容器会首先检查是否需要编译页面。如果该页面从未被编译过,或者自上次编译以来对其进行了修改,则编译该页面。编译过程包括 3 个步骤:JSP 本质是 Servlet,因此 JSP 容器就是 Servlet 容器。
- 解析 JSP:JSP 容器解析 JSP 文件,查看是否有语法错误
- 翻译 JSP:JSP 容器把 JSP 文件翻译为 Servlet 类
- 编译 Servlet
2. JSP初始化
当容器加载 JSP 时,它将在处理任何请求之前调用 jspInit() 方法。如果您需要自定义 JSP 的初始化内容,可以重写 jspInit() 方法。- public void jspInit(){
- // ...
- }
3. JSP执行
此阶段表示了 JSP 生命周期中所有与请求相关的交互行为,直到被销毁。JSP 页面完成初始化后,JSP 将会调用 _jspService() 方法。
_jspService() 以 HttpServletRequest 对象和 HttpServletResponse 对象作为方法参数,如下所示:
- void _jspService(HttpServletRequest request, HttpServletResponse response) {
- // ...
- }
4. JSP销毁
JSP 生命周期的销毁阶段表示从容器中删除 JSP。jspDestroy() 方法等效于 Servlet 中的 destroy() 方法。如果您需要自定义 JSP 的销毁内容,可以重写 jspDestroy() 方法。
jspDestroy() 方法具有以下形式。
- public void jspDestroy() {
- ...
- }
关注公众号「站长严长生」,在手机上阅读所有教程,随时随地都能学习。
不定期发布学习路线+书籍文档+优质视频,为初学者指点迷津。
绑定网站登录功能,再也不用担心密码丢失。
编程11年,建站10年,创业7年,写作6年,既有硬知识,也有软技能。
长期更新,坚持原创,敢说真话,凡事有态度。

微信扫码即可关注

分类:
代码学习网站
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)