jsp生命周期的详细介绍
Jsp生命周期
理解JSP底层功能的关键是理解它们遵循的生命周期。
JSP生命周期是从创建到销毁的整个过程,类似于servlet生命周期,只是JSP生命周期还包括将JSP文件编译成servlet。
以下是JSP生命周期中的各个阶段:
编译阶段:servlet容器编译servlet源文件并生成servlet类初始化阶段:加载JSP对应的servlet类,创建其实例,并调用其初始化方法执行阶段:调用JSP对应的servlet实例的service methods销毁阶段:调用JSP对应的servlet实例的销毁方法,然后销毁servlet实例。显然,JSP生命周期的四个主要阶段与servlet生命周期非常相似,下面给出了示意图:
Jsp生命周期
JSP编译
当浏览器请求JSP页面时,JSP引擎首先检查文件是否需要编译。如果文件自上次编译后没有被编译或被更改,请编译JSP文件。
编译过程包括三个步骤:
解析JSP文件。把JSP文件变成servlet。编译servlet。JSP初始化
容器加载JSP文件后,在为请求提供任何服务之前,它会调用jspInit()方法。如果需要执行自定义的JSP初始化任务,只需复制jspInit()方法,如下所示:
Public void jspInit(){ //初始化代码}一般来说,程序只初始化一次,servlet也是。一般可以用jspInit()方法初始化数据库连接,打开文件,创建查询表。
JSP执行
这个阶段描述了JSP生命周期中与请求相关的所有交互行为,直到它被销毁。
当初始化JSP页面时,JSP引擎将调用_jspService()方法。
_jspService()方法需要一个HttpServletRequest对象和一个HttpServletResponse对象作为其参数,如下所示:
void _ JSP service(HTTP servlet request,HTTP servlet response response){//服务器处理代码}_jspService()方法在每个请求中被调用一次,负责生成相应的响应,还负责生成GET、POST、DELETE等全部七个HTTP方法的响应。
JSP清理
JSP生命周期的销毁阶段描述了当JSP页面从容器中移除时会发生什么。
jspDestroy()方法相当于JSP中servlet中的销毁方法。当您需要执行任何清理工作时,例如释放数据库连接或关闭文件夹,请重写jspDestroy()方法。
jspDestroy()方法的格式如下:
public void jspDestroy(){//clean code }实例
示例JSP生命周期代码如下:
“%@”页面内容类型=' text/html;charset=GB2312 ' % html head title life . JSP/title/head body %!private int initVar=0;private int ServiCevar=0;private int destroyVar=0;% %!public void jspInit(){ initVar;系统。out.println ('jspinit () : JSP已初始化' initVar '次');} public void jspdestory(){ destroyVar;系统。out . println(' JSP destroy(): JSP被销毁' destroyVar '次');} % % serviceVar系统。out.println ('_ jspservice())总共响应了:jsp的' serviceVar '请求;String content1='初始化次数: ' initVarString content2='对客户请求的响应数: ' serviceVarstring content 3=' destroy times : ' destroyVar;% h1 %=content 1%/h1 h1 %=content 2%/h1 h1 %=content 3%/h1/body/html感谢您的阅读,希望对大家有所帮助,也感谢您的支持!
版权声明:jsp生命周期的详细介绍是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。