当客户端浏览器向服务器发出访问一个JSP页面的请求时,服务器根据该请求加载相应的JSP页面,并对该页面进行编译,然后执行。JSP页面的执行过程如下图所示:

  1. 客户端通过浏览器向服务器发出请求,在该请求中包含了请求的资源的路径,这样当服务器接收到该请求后就可以知道被请求的内容。
  2. 服务器根据接收到的客户端的请求来加载相应的JSP文件。
  3. Web服务器中的JSP引擎会将被加载的JSP文件转化为Servlet。
  4. JSP引擎将生成的Servlet代码编译成Class文件。
  5. 服务器执行这个Class文件。
  6. 最后服务器将执行结果发送给浏览器进行显示。

从上面的解释中可以看到,JSP文件被JSP引擎转换后,又被编译成了Class文件,最终由服务器通过执行这个Class文件来对客户端的请求进行响应。其中第三步和第四步构成了JSP处理过程中的翻译阶段,而第五步则为请求处理阶段。

但并不是每次请求都需要重复进行这样的处理。当服务器第一次接收到对某个页面的请求时,JSP引擎就开始按照上述的处理过程来将被请求的JSP文件编译成Class文件。当再次对该页面进行请求时,如果该页面没有任何改动,服务器就会直接调用对应的Class文件来执行。因此当某个JSP页面第一次被请求时,会有一些延迟,而再次访问时会感觉速度快了很多。如果被请求的页面经过了修改,那么服务器会重新编译这个文件,然后再执行。

最新文章

  1. Hadoop学习10--常用命令记录帖
  2. Select Top在不同数据库中的使用
  3. HashMap的原理与实 无锁队列的实现Java HashMap的死循环 red black tree
  4. JSP下载txt 和 Excel两种文件
  5. ASP.NET 使用C#代码设置页面元素中的样式或属性
  6. php PDO连接mysql以及字符乱码处理
  7. shell学习-读取输入
  8. 京东商品hover效果
  9. php追加数组
  10. 自学Zabbix1.1-简介
  11. 第二章:Linux 基础篇章
  12. 【推荐图书】+ 基于Nios II的嵌入式SoPC系统设计与Verilog开发实例+C#入门经典等
  13. [ERROR] - Error reading string. Unexpected token: StartObject. Path 'formData', line 1, position 13.
  14. Git基础考试题
  15. (zhuan) Using convolutional neural nets to detect facial keypoints tutorial
  16. django 使用mysql 数据库
  17. php判断文件夹是不是存在
  18. AOP 增强方法
  19. qt QTcpServer与QTcpSocket通讯
  20. MySQL多实例介绍

热门文章

  1. ZRender
  2. cmd 命令 添加端口
  3. comfirm和prompt的区别
  4. Java EE之 Hibernate 5.x版本中SchemaExport的用法
  5. c#将前端传来的Json解析成对象
  6. 在Mysql中查询两个时间段的差,可以是秒,天,星期,月份,年...
  7. spring源码学习1
  8. Jetson tk1 刷机教程
  9. Python Tools for Machine Learning
  10. 无责任共享 Coursera、Udacity 等课程视频(转载)