`
中华好儿孙
  • 浏览: 65959 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

让jsp页面不被浏览器缓存

阅读更多
效果:使得点击浏览器后退,浏览器从缓存中找不到页面, 从而会重新请求服务器。
过滤器:
package filter;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class NoCacheFilter implements Filter {


    public void doFilter(ServletRequest req, ServletResponse resp,
            FilterChain chain) throws IOException, ServletException {
        //把ServletRequest强转成HttpServletRequest
        HttpServletRequest request = (HttpServletRequest) req;
        //把ServletResponse强转成HttpServletResponse
        HttpServletResponse response = (HttpServletResponse) resp;
        //禁止浏览器缓存所有动态页面
        response.setDateHeader("Expires", -1);
        response.setHeader("Cache-Control", "no-store");
        response.setHeader("Pragma", "no-cache");
        chain.doFilter(request, response);
    }

    public void init(FilterConfig filterConfig) throws ServletException {

    }
    
    public void destroy() {
        
    }
}

jsp页面:
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta HTTP-EQUIV="pragma" CONTENT="no-cache">
<meta HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<meta HTTP-EQUIV="expires" CONTENT="0">
<title>Insert title here</title>
</head>
<body>
<% System.out.println("不缓存页面"); %>
不缓存页面
</body>
</html>

web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
	<filter>
      <filter-name>NoCacheFilter</filter-name>
      <filter-class>filter.NoCacheFilter</filter-class>
 	</filter>
  
   	<filter-mapping>
      <filter-name>NoCacheFilter</filter-name>
      <url-pattern>/*</url-pattern>
   	</filter-mapping>
  </web-app>


参考博文:
http://www.cnblogs.com/xdp-gacl/p/3948422.html
http://blog.sina.com.cn/s/blog_5f458b8b0100cr69.html
分享到:
评论

相关推荐

    JSP页面缓存cache技术–浏览器缓存介绍及实现方法

    一、概述 缓存的思想可以应用在软件分层的各个层面。它是一种内部机制,对外界而言,是不可感知的。 数据库本身有缓存,持久层也可以缓存...二、缓存实现(浏览器缓存当前访问的JSP动态页面) (一)、服务端方法: 代

    Web应用与开发作业

    (1)禁止浏览器缓存所有动态页面; (2)有3个http响应头字段可以禁止浏览器缓存当前页面,它们在Servlet中的示例代码如下。 response.setDateHeader("Expires",-1); response.setHeader("Cache-Control","no-cache...

    图片上传成功jsp页面不刷新问题

    图片上传成功jsp页面不刷新,是因为浏览器缓存导致,需要在图片请求参数中添加随机参数

    JSP页面缓存cache技术--浏览器缓存介绍及实现方法

    缓存的思想可以应用在软件分层的各个...它是一种内部机制,对外界而言,是不可感知的;另外Browser也有缓存(如IE)这个大家也都知道(实现在 web server 上的缓存机制)越上层的缓存效果越好,越底层的缓存影响越深远

    让HTML和JSP页面不缓存从Web服务器上重新获取页面

    当点击后退按钮时,默认情况下浏览器不是从Web服务器上重新获取页面,而是从浏览器缓存中载入页面,那么怎么才能让HTML和JSP页面不缓存呢?下面为大家介绍下比较详细的解决方法

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

    本文实例总结了JSP清除页面缓存常用方法。分享给大家供大家参考,具体如下: 一、清除页面缓存 在jsp页里 &lt;&#37;response.setHeader(Pragma,No-cache); response.setHeader(Cache-Control,no-cache); response....

    JSP实用技巧集合,jsp编程的一些小技巧总结

    75. 请求jsp页面禁止缓存方法? 76. select选中其中的值自动到一个文本框? 77. JSP连接数据库? 78. JSP两级下拉列表框联动(数据库)? 79. JSP字符编码问题及转换大全? 80. 使用过滤器设置请求编码? 81. JSP或Servlet...

    js返回一个历史页面

    js返回一个历史页面,非常好用,开发中经常用到

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

    所以在不需要缓存的页面中需要实现不缓存页面; 代码如下: package com.lc.HttpTest; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax....

    完美解决jsp页面在IE8下文本模式自动为(杂项Quirks)导致页面显示错位

    最近在修改网站的响应式的页面时,由于都是套样式页面,修改过程都是粘贴复制,导致了一些细节问题在IE8下暴露出来: 遇到的问题就是在在Chrome,火狐页面都正常,唯独在IE8下页面样式显示...以上这篇完美解决jsp页面在

    jsp编程技巧集锦

    请求jsp页面禁止缓存方法? 76. select选中其中的值自动到一个文本框? 77. JSP连接数据库? 78. JSP两级下拉列表框联动(数据库)? 79. JSP字符编码问题及转换大全? 80. 使用过滤器设置请求编码? ...

    在jsp修改CSS样式后没反应无效果的解决方法

    问题:在jsp修改CSS样式后看不到效果,clear过了,tomcat重启过了,浏览器缓存清除过了,还是没反应。 解决方法:双击tomcat服务器,选择Modules,点Add Web Module…,在弹出的窗口选择你的项目,在path输入/就好...

    Explorer4JSP

    我开发的这个文件浏览工具只有一个简单的JSP页面($files.jsp),将该页面放置在需要浏览的目录下,然后访问该文件,将显示该文件所在目录下的所有文件以及所有子目录下的文件。 工具特点: 1.列表和缩略图两种浏览...

    JSP大文件上传控件-access-utf8

    支持浏览器:IE6,IE7,IE8,360安全浏览器,QQ浏览器,搜狐浏览器,Maxthon(遨游)浏览器1.X,Maxthon(傲游)浏览器2.x 支持文件大小:2G~8EB(1EB=102PB,1PB=1024TB,1TB=1024GB) 支持文件类型:任意类型 版权所有 2009-2012 ...

    JspRun!社区论坛系统 v6.0 bulid 090424 GBK 安装版.rar

    1、优化了页面缓存类及页面缓存生成方式 2、优化减少过滤器中的sql查询语句 3、优化减少版块帖子列表sql查询语句 4、优化个人空间 5、优化验证问答 6、优化快速编辑帖子的提交方式和帖子附件下载次数 7、...

    jsp九大内置对象

     Session对象是一个JSP内置对象,它在第一个JSP页面被装载时自动创建,完成会话期管理。从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。当一个客户访问一个服务器...

    JspRun!社区论坛系统 v6.0 bulid 090423 GBK 源码版.rar

    1、优化了页面缓存类及页面缓存生成方式 2、优化减少过滤器中的sql查询语句 3、优化减少版块帖子列表sql查询语句 4、优化个人空间 5、优化验证问答 6、优化快速编辑帖子的提交方式和帖子附件下载次数 7、...

    JSP Struts配置文件详解

    @nochache:true时,在相应结果中加入特定的头参数:Pragma ,Cache-Control,Expires防止页面被存储在可数浏览器的缓存中,默认为false --&gt; contentType="text/html;charset=UTF-8" locale="true" processorClass=...

    JspRun!社区论坛系统 v6.0.0 build 20110516 GBK 源码版.zip

    33、修复了:统计功能中,“积分排行”的缓存不起作用的问题。 34、修复了:后台查看禁止用户记录时,页面样式的错误。 35、修复了:论坛控制面版的公众用户组功能不是公众用户组的也会显示加入的问题 36、修复了...

    JspRun!社区论坛系统 v6.0.0 build 20110516 UTF-8 安装版.zip

    33、修复了:统计功能中,“积分排行”的缓存不起作用的问题。 34、修复了:后台查看禁止用户记录时,页面样式的错误。 35、修复了:论坛控制面版的公众用户组功能不是公众用户组的也会显示加入的问题 36、修复了...

Global site tag (gtag.js) - Google Analytics