JavaWeb--JSP
概念
第一个JSP程序:- 在WEB-INF目录之外创建一个index.jsp文件,然后这个文件中没有任何内容。
- 将上面的项目部署后,启动服务器,打开浏览器,访问以下地址:
http://localhost:8080/jsp/index.jsp此时展现在大家面前的是一个空白页
过程:- 实际上访问该index.jsp文件时,底层执行的是:index_jsp.class这个java程序。
- 这个index.jsp会被Tomcat翻译生成一个index_jsp.java文件,之后Tomcat会将这个java文件编译成一个class文件,最后由JVM来执行这个class文件。
- 访问index.jsp,实际上执行的是index_jsp.class中的方法
JSP生命周期- index.jsp访问的时候会自动翻译成index_jsp.java文件,该文件再编译为class文件,index_jsp这就是一个类。
- index_jsp类继承了HttpJspBase,而HttpJspBase类继承了HttpServlet类,故index_jsp类也是一个Servlet
- JSP实际上就是一个Servlet,Jsp的生命周期和Servlet一样,没有任何区别
- jsp和Servlet一样,都是单例的(假单例)。
思考:为什么JSP文件的第一次访问速度较慢?- 大部分运维人员给客户演示项目,都需要先将所以JSP文件先访问一遍、
- 第一次访问JSP文件
- 将jsp文件翻译生成Java文件
- 编译Java文件生成class文件
- 通过class去创建servlet对象
- 调用Servlet的init方法
- 最后调用servlet对象的service方法
- 之后访问JSP文件
- 此时直接调用servlet对象的service方法即可
JSP概念总结- 在JSP文件中直接编写文字会被翻译到Servlet类的Service方法的
out.write("文字内容")中,直接翻译到双引号里,被Java程序当做字符串来打印输出到浏览器
评论



