JAVA学习笔记_预编译

第一次运行jsp时jsp将被转化成servlet(第一次时间较长,而之后就会快很多)
        配置好的应用程序可以通过设置jsp页面的URI映射,之后只安装编译后的java类文件来实现安装(可以只将servlet类文件打包,避免对jsp文件的改动)

         预编译方法:
            在开发环境中运行需要编译的jsp页:tomcat默认把jsp页的类文件保存在work目录
            使用jsp_precompile参数:只编译页面而不处理请求:如applet.jsp?jsp_precompile或applet.jsp?jsp_precompile=true

         tomcat的预编译:jsp容器对产生的类文件命名很复杂???(本书基于jsp1.1)
            ★从 tomcat 的版本介绍来看,从4.x开始tomcat的编译器已经重新编写,并且增强了对使用集成开发工具开发的应用程序的管理,在我使用的tomcat5.0.28中类文件名的问题已经得到了较好解决
            让应用程序直接调用servlet类文件:将类文件转移到WEB-INF/class目录下与包名相匹配的子目录里->把此jsp页的URI映射规则添加到WEB-INF/web.xml文件中
            ★注:不能使用另一种容器来部署由其他容器中生成的servlet(web容器在其生成的servlet中调用自己的内部类)
        
         jsp页的缓存:通过下列方法设置应答首部来通知浏览器和代理服务器不要缓存该页
            response.addHeader()
            response.addDateHeader()
            或者将上述脚本变成自定义行为(更简洁)
         URL的解释:HTTP、servlet和jsp的规范中用于描述URI的术语相互矛盾
            1.绝对URI:由jsp页面生成的HTML元素使用的URI由浏览器来进行解释;浏览器的需要
            以下两种由web容器来解释:
            2.绝对路径URI:以"/"开始:同一服务器上的资源;容器将根据应用程序的环境路径(context path)进行解释
            3.相对路径URI:不以"/"开始:当前页面所在路径:如"process.jsp"或"../image/xxx.gif"

你可能感兴趣的:(Java)