JSP的本质是Servlet(一个特殊的Java类),每个JSP页面就是一个Servlet实例。JSP页面由系统编译成Servlet,然后再由Servlet响应客户端请求。
JSP页面由两部分组成:
(1)静态部分:标准的HTML标签、静态HTML内容,与普通的HTML页面无异。
(2)动态部分:Java程序动态生成的部分。
JSP生命周期:
编译后,由JSP声明语法定义的变量和方法将对应于Servlet类的成员变量和方法,其他成为_jspService()方法内的内容。
JSP对应的Servlet类三大方法:
_jspInit():初始化,如建立数据库连接、打开文件等
_jspService(HttpServletRequest request, HttpServletResponse response):处理请求
_jspDestory():销毁,如断开数据库连接
JSP工作原理:
1.客户端浏览器向服务器发送请求;
2.Web服务器识别请求,如果是对JSP的请求,则将请求传递给JSP引擎;
3.JSP引擎从服务器磁盘载入JSP文件,并将其转化为Servlet(Java 类),然后再将其编译成.class文件;
4.Web服务器调用Servlet引擎,加载运行class文件。在执行过程中,Servlet 产生 HTML 格式的输出并将其内嵌于 HTTP response 中上交给 Web 服务器;
5.Web服务器将 HTTP response 返回到客户端浏览器。