总的来说,Jasper的自动检测实现的机制比较简单,依靠某后台线程不断检测JSP文件与编译后的class文件的最后修改时间是否相同,若相同则认为没有改动,但倘若不同则需要重新编译。实际上由于在Tomcat部署的项目的JSP可能引入了其他页面,或者引入了其他jar包,而且这些资源都可能是远程的资源,所以实际处理会比较复杂,同样要遍历检测这些引入的不同资源是否做了修改。
jsp自动编译机制
最新推荐文章于 2021-07-03 01:46:19 发布
本文介绍了Jasper在Tomcat中的自动编译机制,通过后台线程检查JSP及其引用资源的修改时间,判断是否需要重编译。JspServlet实现PeriodicEventListener接口,periodicEvent方法中执行检测逻辑。当JSP或其依赖资源的lastmodified属性改变时,触发编译。本地资源使用File类获取属性,远程资源通过URL和URLConnection获取jar包的lastmodified时间。

订阅专栏 解锁全文
5851

被折叠的 条评论
为什么被折叠?



