1、JSP的本质是Servlet,当用户向指定Servlet发送请求时,Servlet利用输出流动态生成HTML页面,包括每一个静态的HTML标签和所有在HTML页面中出现的内容。由于包括了大量的HTML标签、大量的静态文本及格式等,导致Servlet的开发效率极其低下。所有的表现逻辑,包括布局、色彩及图像等,必须耦合在Java代码中。JSP的出现弥补了这种不足,其静态部分无须Java程序控制,只有需要去数据库读取或需要动态生成的页面内容,才使用Java脚本控制。
2、JSP页面的组成:
①静态部分:标准的HTML标签、静态的页面内容。这些内容与静态HTML页面相同。
②动态部分:受Java程序控制的内容,这些内容由Java脚本动态生成。
欢迎学习Java Web知识,现在时间是:
<%out.println(new java.util.Date());%>
上面放在<%和%>之间,表明这些是Java脚本,而不是静态内容,通过这种方式就可以把Java代码嵌入JSP页面中,边变成动态的JSP页面
3、JSP页面内看似不需要Java类,事实上,JSP的本质依然是Servlet(一种特殊Java类),每个JSP页面就是一个Servlet实例——JSP由系统编译成Servlet,Servlet再负责相应用户请求。对于Tomcat,生成的Servlet放在work路径对应的Web应用下 。
4、Servlet类主要方法:
①init():初始化JSP/Servlet方法
②destroy():销毁JSP/Servlet之前的方法
③service():对用户请求生成响应的方法
5、根据JSP的工作原理可知:
①JSP文件必须在JSP服务器内运行
②JSP文件必须生成Servlet才能执行
③每个JSP页面的第一个访问者速度很慢,因此必须等待JSP编译成Servlet
④JSP页面的访问无须安装任何客户端,甚至不需要可以运行Java的运行环境,因为JSP页面输送到客户端的是标准HTML页面。