JSP工作原理

一 与html的关系

1.提到jsp我第一反应就是html,但是他们是不一样的。

2.HTML是超文本标记语言,使用微软自带的记事本或写字板都可以编写,主要用于编写静态页面。什么静态页面呢?是在客户端运行的程序、网页、插件与组件,注意它是可以播放动态的视频或者图片的,静态网页的意思可以理解为拷贝到哪儿都可以运行。

3.jsp是java服务器网页技术,必须通过发布到Tomcat等服务器上再运行转化为servlet才行,当然它是动态页面。

二 组成

1.jsp是有两部分组成:

  1. 静态部分:标准的HTML标签、静态的页面内容,这些内容与静态HTML页面相同.
  2. 动态部分:Java程序控制的内容,这些内容由Java程序来动态生成,通过<%和%>把Java语言镶嵌入html有页面里

三 工作原理

  1. 当用户访问一个JSP页面时,会向一个Servlet容器(Tomcat等)发出请求;
  2. 如果页面有所改动,则servlet容器首先要把JSP页面(假设为test.jsp)转化为Servlet代码(test.java),再将其转化为class文件(test.class文件);这种过程(编译)会耗费时间
  3. JSP容器负责调用从JSP转换来的servlet,这些servlet负责提供服务相应用户请求;如果用户有多个请求,则容器会建立多个线程处理多个请求;
  4. 容器执行字节码文件(包括调用的servlet:formprocessor.java字节码),并将其结果返回到客户端;(返回的最终方式是有servlet输出html格式的文件流)

参考:http://www.cnblogs.com/mengyan/archive/2012/09/06/2672846.html

原文地址:https://www.cnblogs.com/zhuanzhuruyi/p/6539421.html