日期:2014-05-17  浏览次数:20786 次

关于jsp页面缓存的问题
遇到的问题:图片修改之后显示的还是原图片,要手动刷新才显示修改之后的。
知道是缓存的原因,在网上找来一顿基本都是这段代码:
response.setHeader("Pragma","No-cache"); 
response.setHeader("Cache-Control","no-cache"); 
response.setDateHeader("Expires", 0); 
但是无效,有高人指点一下吧。

------解决方案--------------------
图片修改之后显示的还是原图片

你不刷新的话肯定还是显示原来的图片啊
另外,页面清空缓存的也就是你上面那段代码了
------解决方案--------------------
如果是 [修改之后跳转到另一个页面 ]
就不存在刷新问题,楼主把这两个页面间的关系说清楚点
修改后怎么跳转到另一个页面的??

页面清空缓存 话 还有服务器端代码,你那个是客户端代码
------解决方案--------------------
用的是什么服务器,
修改图片后要刷新页面才能看到的,
如果不是就清空下页面的缓存.
重启下服务器..看看..
------解决方案--------------------
lz先关闭tomcat 然后 删除一下tomcat/work 下的所有文件,然后再启动tomcat反问一下

怀疑是tomcat没有完全编译
------解决方案--------------------
如果是页面跳转后发现更新的内容不能及时显示出来,可以试试用reponse.sendRedirct(),让页面重定向
------解决方案--------------------
有可能是IE的问题
------解决方案--------------------
是IE的缓存,在你显示图片的JS中写个随机数做参数试下.
------解决方案--------------------
加上这个css试试
<style type="text/css"> 
<!-- 
#newPreview {FILTER: progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)} 
--> 
</style>
------解决方案--------------------
再试试这个
response.setHeader("Expires","Mon, 26 Jul 1997 05:00:00 GMT");
response.setHeader("Cache-Control","no-cache, must-revalidate");
response.setHeader("Pragma","no-cache");
如果再不行,可以让页面自动刷新,比如每1分钟刷新一次,这样总比手动刷新才更新的好
<meta http-equiv="refresh" content="60" />这句是自动刷新,加在<head></head>之间
------解决方案--------------------
关注中.
------解决方案--------------------
你可以在页面置一个刷新的按钮 
类似的我也遇过 不好解决
------解决方案--------------------
我在公司就是用这个方法去掉页面,但是由于公司业务需求,一般不去掉,因为缓存会提高效率,去掉有的页面就打不开了,ls的方法也不好啊,如果需要做按钮刷新,还不如直接按F5呢,其实图片的缓存时间本身就是要比文字长些,我在公司后台修改图片,前台也不是马上就会自动刷出来,我觉得不好实现,其实自动刷新是个很好的方法,lz何必让他停下来呢?lz可以去看看各大门户网站,凡是需要数据不断更新的页面,比如新浪NBA数据库页面,他也不可能做到后台改完数据,前台马上就刷出来,去掉缓存的方法如果用在大的页面上是不可取的,这会大大的降低效率,自动刷新是解决这个问题的一个不错的方法,我是这样认为的
------解决方案--------------------
response.setHeader("Refresh",0);再试试这个
------解决方案--------------------
去掉页面也加上,一起用试试
------解决方案--------------------
问下lz的修改功能,页面显示的顺序是怎样的?
------解决方案--------------------
搞错了...搞错了...
<input type="button" name="update" onclick="javascript:window.location.reload()" value="修改"/>
再试试
------解决方案--------------------
贴页面代码出来
------解决方案--------------------
还是没有帮到lz,不好意思了
------解决方案--------------------
探讨
lz先关闭tomcat 然后 删除一下tomcat/work 下的所有文件,然后再启动tomcat反问一下

怀疑是tomcat没有完全编译