JSP基本原理
2016-06-25 12:11
751 查看
许多由CGI生成的页面大部分仍然是静态的HTML,动态内容只在页面中有限的几个部分出现。但是包括包括Servlet在内的大多数CGI程序及其变种,总是通过程序生成整个页面,JSP使得我们可以分别创建这两个部分。Web容器处理JSP文件请求需要经过三个阶段.
翻译阶段(translation phase):在这个阶段,编写好的JSP文件首先会被WEB容器中的JSP引擎转换成JAVA源代码,也就是通过Servlet引擎。
编译阶段(compilation phase):在这个阶段,JSP所翻译成的Java源代码会编译成可执行的字节码(可执行的字节码是二进制格式,class文件)
请求阶段(Request phase)请求阶段,当容器接受了客户端的请求后,就执行前面已经编译好的二进制字节码的JSP文件。处理完请求后,容器再把生成的页面反馈给客户端进行显示。
另:
一旦容器把JSP文件翻译和编译后,来自客户端的每一个JSP请求都可以重用这个编译好的二进制字节码,没有必要再把同一个JSP进行翻译和编译,这样大大提高了WEB应用系统的性能。如果对JSP文件进行了修改,容器会及时的探测到这个修改,并重新翻译和编译。所以所有的JSP文件第一次请求时会比较慢,而之后JSP文件的请求会非常快。
翻译阶段(translation phase):在这个阶段,编写好的JSP文件首先会被WEB容器中的JSP引擎转换成JAVA源代码,也就是通过Servlet引擎。
编译阶段(compilation phase):在这个阶段,JSP所翻译成的Java源代码会编译成可执行的字节码(可执行的字节码是二进制格式,class文件)
请求阶段(Request phase)请求阶段,当容器接受了客户端的请求后,就执行前面已经编译好的二进制字节码的JSP文件。处理完请求后,容器再把生成的页面反馈给客户端进行显示。
另:
一旦容器把JSP文件翻译和编译后,来自客户端的每一个JSP请求都可以重用这个编译好的二进制字节码,没有必要再把同一个JSP进行翻译和编译,这样大大提高了WEB应用系统的性能。如果对JSP文件进行了修改,容器会及时的探测到这个修改,并重新翻译和编译。所以所有的JSP文件第一次请求时会比较慢,而之后JSP文件的请求会非常快。
相关文章推荐
- javascript面向对象编程---学习笔记
- 列表状态自动切换
- fullPage.js全屏滚动插件
- JS中关于把函数作为另一函数的参数的几点小总结
- 在调试javascript的时候,要常使用alert()
- 提高JavaScript性能
- JavaScript 与html的元素产生关联
- javascript标准对象
- 自定义 jstl 标签
- rapidjson的read和write的sample
- js面向对象
- JSP/Servlet 工作原理
- js数组的声明与应用
- Js内置对象的应用
- JavaScript对象
- js操作XML文件的实现方法兼容IE与FireFox
- 在页面中使用js
- Express.js中的locals用法
- Express.js中的locals用法
- js将滚动条滚动到指定位置的简单实现方法