1、jsp的运行原理
1、客户端通过浏览器向服务器发送请求,请求中包含所请求资源的路径,这样服务器收到请求时就可以知道所请求的内容。
2、服务器根据收到的客户端请求加载相应的JSP文件。
3. Web 服务器中的 JSP 引擎会将加载的 JSP 文件转换为 Servlet。
4. JSP引擎将生成的Servlet代码编译成Class文件。
5. 服务器执行这个Class文件。
6、最后服务器将执行结果发送给浏览器显示。
2、执行过程
1.客户端发出Request请求
2、JSP Container将JSP翻译成Servlet源码
3、编译生成的Servlet源代码jsp可以直接通过浏览器运行,加载到内存中执行。
4. 将结果Response发送给客户端
很多人会认为JSP的执行性能与Servlet会有很大的不同。事实上,执行性能的差异仅在于第一次执行。因为JSP第一次执行后会被编译成Servlet类文件,即.class。当重复调用执行时,第一次生成的Servlet会直接执行,不需要重新将JSP编译成Servelt。因此,除了第一次编译耗时较长之外jsp可以直接通过浏览器运行,JSP和Servlet的执行速度几乎是一样的。
执行JSP网页时,通常可以分为两个时期:翻译时间和请求时间
翻译期:JSP网页转为Servlet类。
请求期:Servlet类执行完毕后,将响应结果发送给客户端。
翻译过程中做了两件事:
翻译期:将JSP网页转为Servlet源码.java。
编译时间:将Servlet源代码.java编译成Servlet类.class。
当JSP网页执行时,JSP容器会做检查工作。如果发现JSP网页有更新和修改,JSP Container会重新将JSP编译成Servlet;如果JSP没有更新过,则直接执行之前生成的Servlet。**
暂无评论内容