jsp编译、执行过程 22
2016-09-22 11:47
120 查看
一、jsp执行过程图解
用户访问jsp页面时,jsp的处理过程如下图所示:二、预处理阶段
客户第一次请求jsp页面时,jsp引擎会将jsp文件中的脚本代码(HTML)和代码片段(java代码)全部转换为java代码,转换过程非常直观:对于HTML文本只需要用简单的out.println方法包裹,对于java脚本只做保留或简单的处理。三、编译阶段
预处理阶段把jsp文件解析为java代码,编译阶段jsp引擎把java代码编译成servlet类文件,对于Tomcat,生成的class文件默认情况下存放在<Tomcat>/work目录下。
四、响应阶段
编译后的class对象被加载到容器中,并根据用户的请求生成HTML格式的响应页面返回给客户端。在执行jsp网页时,通常分为两个时期:转译时期和请求时期。转译时期jsp页面被翻译成Servlet类,然后编译成Class文件;用户请求时期,servlet类被执行,生成HTML响应至客户端。
五、jsp和servlet的执行速度
jsp的转译和请求都在在第一次访问时进行的,所以用户在第一次访问jsp页面时响应时间会比较长。在之后的请求中,这些工作已经完成,时间延长问题不存在了。在处理后续的访问时jsp和servlet的执行速度是一样的。六、容器、jsp容器、jsp引擎
jsp要转译为servlet,但是servlet没有main()方法,servlet对象的创建、方法的调用由web容器来实现。以Tomcat为例,先看一下Tomcat的总体结构:从图中可以看出,Tomcat的核心组建是connector和container,container就是容器。容器就是负责管理控制servlet的应用程序。图中的jasper就是解析jsp的jsp引擎。Tomcat既是servlet容器又是web服务器,也是jsp引擎。
相关文章推荐
- jsp编译、执行过程
- jsp编译、执行过程
- 在tomcat中jsp文件的大概执行过程
- jsp 编译过程(以tomcat为例)
- JSP被生成java类编译及Tag解析过程
- 【SQL Server】存储过程的设计概念(3)T-SQL的编译和执行过程
- php脚本的执行过程(编译与执行相分离)
- 剖析JSP和servlet的中文处理编译过程
- OO中的继承分析,主要分析在编译和运行过程中子类父类的方法、字段和实例化时候在内存中分配和执行的先后,以及两个原则
- JSP的执行过程
- JVM学习笔记(二)------Java代码编译和执行的整个过程
- 详细分析make uboot 最后的编译链接的具体执行过程
- 实现分析sql语句执行过程和编译时间的方法
- 剖析JSP和servlet的中文处理编译过程(转)
- C程序编译执行过程
- JVM学习笔记(1、 基本结构;2、Java代码编译和执行的整个过程3、内存管理和垃圾回收 4、 内存调优 )
- C#代码的编译与执行过程(摘自ms inside c#)
- jsp页面编译过程
- 编译输出的PE文件的执行过程
- OO 中的继承分析:主要分析在编译和运行过程中 子类、父类 的字段和方法以及实例化时候在内存中分配 和 执行的先后,以及两个原则