`
lbyzx123
  • 浏览: 476050 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

JSP禁用缓存常用方法

    博客分类:
  • J2EE
 
阅读更多
jsp页面禁止缓存设置
1.客户端缓存要在<head>中加入类似如下内容:
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">
或  

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">  

2.在服务器的动态网页中禁止缓存,要加入类似如下脚本
response.setHeader("Pragma","No-cache");
response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires", 0); 

3.设置有限时间的缓存 
int minutes = 10; 
Date d = new Date(); 
String modDate = d.toGMTString(); 
String expDate = null; 
expDate = (new Date(d.getTime() + minutes * 60000)).toGMTString(); 
response.setHeader("Last-Modified", modDate); 
response.setHeader("Expires", expDate); 
response.setHeader("Cache-Control", "public"); //   HTTP/1.1 
response.setHeader("Pragma", "Pragma"); //   HTTP/1.0
建议:jsp cache最好做在过滤器上,把需要缓冲的页面集中在同一个目录下,每次更改只须更改web.xml就可以完成缓冲设置,这样比较方便.

4.最后如果以上方法都不行的话,就在你的正常的URL后面加上一个尾巴

在JS中就选择

var timestamp = (new Date()).valueOf();  

URL+"&timestamp="+timestamp;

在Java代码中就选择

long timestamp=new Date().getTime();

URL+"&timestamp="+timestamp;

这样的话,你的URL始终都在变化,自然浏览器就得老老实实的进行更新了,它也无缓冲可拿了。

 

分享到:
评论

相关推荐

    禁用html页面的缓存

    对于PHP页面,可以通过设置HTTP头部信息来达到禁用缓存的目的。代码示例如下: ```php header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 header("Pragma: no-cache"); // HTTP/1.0 ?&gt; ``` 这里...

    jsp去除浏览器缓存

    但在某些情况下,我们可能需要禁用缓存机制,例如: - 当页面内容频繁更新时。 - 当我们需要确保用户始终看到最新版本的页面时。 #### 三、JSP中禁用浏览器缓存的方法 在JSP页面中可以通过设置HTTP响应头来实现...

    JSP清除页面缓存常用方法小结

    JSP提供了多种方式来控制页面缓存,本文将针对JSP页面缓存清除的方法做详细介绍。 1. 清除JSP页面缓存 JSP页面可以通过响应头来控制缓存。具体方法是在JSP页面中设置响应头,禁止浏览器缓存页面内容。以下是一段...

    htm,asp,php,jsp不缓存网页的办法.doc

    然而,在某些情况下,如后台操作或实时更新的大型网站新闻页面,我们需要确保用户每次看到的页面都是最新版本,这就涉及到如何在不同类型的网页中禁用缓存的技术。 ### 静态页面(HTML) 在HTML静态页面中,可以...

    JSP实现屏蔽浏览器缓存的方法

    这是IE浏览器特有的,用于指定缓存预检和后检的时间,这里设置为0表示禁用缓存预检和后检。 4. 最后,使用setDateHeader方法设置"Expires"头,值为0,这表示响应立即过期,浏览器必须丢弃这个响应,并从服务器重新...

    缓存说明.doc

    例如,可以使用`@Cacheable`注解标记方法,使得该方法的返回结果被缓存。 **oscache** oscache是OpenSymphony公司提供的一个轻量级、高性能的缓存解决方案,主要关注于Web应用中的页面缓存。它可以缓存整个页面或...

    IE页面缓存问题jsp及servlet中的设置

    在探讨IE页面缓存问题及其在JSP、Servlet与...然而,值得注意的是,虽然禁用缓存可以确保数据的新鲜度,但同时也可能增加服务器的负载和网络带宽的消耗,因此在实际应用中需根据具体场景权衡利弊,选择合适的缓存策略。

    如何防止IE缓存jsp文件.doc

    对于使用Java Server Pages(JSP)技术的应用程序而言,了解如何有效地禁用Internet Explorer(IE)等浏览器对JSP文件的缓存是非常重要的。 #### 使用Java提供的方法 一种常见的方法是在JSP或Servlet中通过设置...

    JSP 开发之Servlet解决网页缓存问题

    例如,对于新闻、动态信息或者用户个性化内容,通常需要禁用缓存,以确保用户始终看到最新的内容。而对于静态资源,如图片、CSS和JavaScript文件,设置适当的缓存时间可以显著提升页面加载速度,减轻服务器压力。 ...

    JSP_重复提交_解决方法

    ### JSP重复提交问题及其解决方法 #### 一、引言 在Web应用程序开发中,尤其是在使用Java Server Pages (JSP)技术时,一个常见的问题是重复提交数据。当用户不小心刷新了页面或按下了浏览器的“后退”按钮时,可能...

    Myeclipse中修改类及jsp文件后不用重启tomcat的方法

    本文将详细介绍如何在MyEclipse中实现修改类及JSP文件后无需重启Tomcat即可实时生效的方法。 首先,理解问题的核心在于如何使Tomcat在运行状态下感知到代码的变更并自动热部署。MyEclipse内置了对Web应用的热部署...

    Tomcat的jsp编译参数

    例如,`org.apache.jasper.compiler.disablejsr199`可以禁用JSR 199(Java EE 5引入的JSP 2.1规范)的编译方式,`org.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER`限制了JSP标签体内容的缓冲大小。...

    提升JSP页面响应速度的七大秘籍绝招

    在Web开发中,JSP(JavaServer Pages)是一种常用的动态网页技术。为了优化用户体验,确保快速的页面加载速度至关重要。以下是一些有效提升JSP页面响应速度的方法: 1. **在servlet的init()方法中缓存数据** 在...

    jsp中session使用方法.docx

    3. **禁用浏览器的Session ID缓存**:通过设置`response.setHeader("Cache-Control", "no-store")`来禁止浏览器缓存Session ID。 4. **定期更改Session ID**:在用户执行敏感操作(如更改密码)后,可以重新创建...

    提升JSP性能技巧

    #### 二、在`init()`方法中缓存数据 **方法原理:** 在Servlet的生命周期中,`init()`方法只会在Servlet实例被创建并初始化时调用一次。因此,这是一个理想的时机来执行一些只需要执行一次的操作,比如初始化数据或...

    jsp常见问题

    为了避免浏览器缓存JSP或Servlet的输出,可以在JSP文件的头部加入以下代码: ```jsp response.setHeader("Cache-Control", "no-store"); // HTTP 1.1 response.setHeader("Pragma", "no-cache"); // HTTP 1.0 ...

    JSP分选房间聊天室

    2. **缓存机制** - 使用缓存减少数据库查询频率,提高系统响应速度。 3. **负载均衡** - 如果应用部署在多台服务器上,可以采用负载均衡策略,提升系统的可用性和可扩展性。 **用户体验**: 1. **响应式设计** - ...

    JSP_Servlet应用程序优化的八种方法

    为了提升JSP/Servlet应用程序的性能,开发者可以在`init()`方法中缓存静态数据或执行那些成本较高的初始化操作。这是因为`init()`方法在整个Servlet的生命周期中只会被调用一次,即在Servlet实例被创建之后、处理...

Global site tag (gtag.js) - Google Analytics