博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Tomcat加载JSP原理
阅读量:5295 次
发布时间:2019-06-14

本文共 817 字,大约阅读时间需要 2 分钟。

Tomcat加载JSP主要有以下几个类:
JspServlet
JspServletWrapper
JspCompilationContext
JspRuntimeContext
JsperLoader
Compiler
 这几个类都在jasper.jar包中
 
1.Tomat将http请求通过servlet转给JspServlet
2.JspServlet在JspRuntimeContext的上下文中查找JspServletWrapper,如果没有找到就新建实例,找到了话就取出来用
3.JspServletWrapper初始化时也会初始化一个JspCompilationContext
4.JspServlet将请求转给JspServletWrapper的service方法进行处理
5.JspServletWrapper将判断系统是否允许重加载this.options.getDevelopment,如果允许将调用JspCompilationContext的编译方法compile
6.JspCompilationContext的compile方法通过判断jsp文件的时间戳来决定是否将类加载器JsperLoader的引用置null
7.JspServletWrapper通过getServlet方法从JspCompilationContext加载(load方法)jsp编译后的class类,并实例化
8.JspCompilationContext类在load时,首先要获得JsperLoader,如果它为null将新建一个实例,然后让JsperLoader这个类加载器加载jsp的class
9.JspServletWrapper获得实例化的servlet后,将把JspServlet转过来的请求交由这个servlet处理

转载于:https://www.cnblogs.com/TomSnail/p/4380376.html

你可能感兴趣的文章
福建省第八届 Triangles
查看>>
P1182 数列分段`Section II` P1316 丢瓶盖 二分答案
查看>>
更新下载库update绝对详解
查看>>
SDUTOJ3754_黑白棋(纯模拟)
查看>>
Scala入门(1)Linux下Scala(2.12.1)安装
查看>>
laravel
查看>>
installing the matplotlib via pip in the enviroment dos
查看>>
bzoj3312: [Usaco2013 Nov]No Change
查看>>
如何改善下面的代码 领导说了很耗资源
查看>>
Quartus II 中常见Warning 原因及解决方法
查看>>
数据库系统之1.使用gridview动态增加行的实现
查看>>
C# TimeSpan 计算时间差(时间间隔)
查看>>
php install
查看>>
高德地图 – 1.问题集锦
查看>>
[转载]网络流笔记
查看>>
ES6学习之let声明变量的学习
查看>>
Java包装类型
查看>>
SQL学习笔记第3次
查看>>
如何理解封装、继承和多态
查看>>
vim 文档加密
查看>>