出现这种现象的原因主要是tomcat缓存的原因。
解决办法如下:
在jsp文件头加上
其中,第一行的content="0",是表示过期的时间,如果不是0的话,就必须使用GMT的时间格式。第二行表示不用缓存机制。
删除work目录下的缓存文件。
conf/server.xml 文件Context path 中间加上 reloadable="true"
例如:<Context path="" docBase="E:\MYJSP\" debug="0" reloadable="true" />
在tomcat的startup.bat里首部加上批处理命令
rd/s/q "D:\Program Files\tomcat-6.0\work\Catalina
tomcat路径根据自己情况修改.
这样基本可以解决缓存遗留问题。
==========================================
方法1、再当前浏览器,工具里清空一下上网记录(如果你的cookie没那么重要的话,全部选中,清空)。重新打开一个IE浏览器,再打上网址,回车。
如果还不行
方法2、重启tomcat,但是太费时间,有时还不管用。。
方法3、Apache Software Foundation\Tomcat 5.5\work\Catalina\localhost
有一些发布程序的时候编译的jsp的Java类,可都清空该文件夹,也可以只删除跟当前项目相关的类。
方法3,最直接。。。彻底
不过我常用方法1。方法3,要翻那么多文件夹,我会在方法1实在还是不可以的话。才用方法3
=========================================
方法一:
conf/server.xml文件
Context path中间加上reloadable="true"
例如:
方法二:
删除work目录下的缓存文件
可以把Catalina目录删除; 注意:不能把work整个目录删除,不然重启tomcat时,会把conf/web.xml删除掉,这样在启动时,日志会提示:No Default web.xml,且访问页面会显示404错误;
(1)在tomcat/conf/logging.properties文件下修改“maxDays”,系统默认是90天,对于高并发大访问量的服务,将保存的天数设置为最短。
(2)将level级别设置成WARNING就可以大量减少日志的输出,一般日志的级别有:
SEVERE (highest value) >WARNING >INFO >CONFIG >FINE >FINER >FINEST (lowest value),这里建议设置成“ WARNING”。
在tomcat/conf/server.xml文件中注释掉“localhost_access_log”日志生成
catalina.out与按天的catalina.xxxx.log重复,所以这里直接禁用。
在tomcat/bin/catalina.sh中找到下面位置
修改到dev/null,当路径不存在时,catalina.out日志也就被禁用
即停止tomcat、进入tomcat/work目录下——>执行 rm -rf Catalina 来删除缓存文件——>启动tomcat = OK
Tomcat的缓存文件就是指JSP文件编译后的class和java文件。虚拟机无法直接执行JSP文件,首先需要把.jsp编译为.java,然后再编译为.class。这个过程是应用服务器自动完成的,不需要人工干预。tomcat用于存放这些文件的地方就是work目录。有时你修改了jsp文件但页面没有任何变化,有可能是jsp文件虽然更改但tomcat没有及时编译。这是只需要清掉work目录中的相应内容,tomcat发现对应的.class没有了,就会从新编译。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)