您的位置:首页 > 其它

设置不使用缓存的过滤器(ClearCacheFilter)

2013-10-10 09:29 281 查看

功能描述

        将HTTP响应头信息中的缓存参数设置为不进行缓存。

使用方法

        在 java web 项目的 web.xml 文件中添加如下代码。

<!--设置不使用缓存的过滤器配置  开始 -->
<filter>
<filter-name>ClearCacheFilter</filter-name>
<filter-class>com.hmw.filter.ClearCacheFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>ClearCacheFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>ClearCacheFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<!--设置不使用缓存的过滤器配置  结束 -->

过滤器源码

package com.hmw.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.HttpServletResponse;

/**
* 使浏览器不缓存页面信息的过滤器

* 创建日期:2012-01-10
*
* @author

*/
public class ClearCacheFilter implements Filter {

@Override
public void init(FilterConfig filterConfig) throws ServletException {
}

@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) throws IOException, ServletException {
HttpServletResponse httpResponse = (HttpServletResponse) response;
httpResponse.setHeader("Cache-Control", "no-cache");
httpResponse.setHeader("Pragma", "no-cache");
httpResponse.setDateHeader("Expires", -1);
filterChain.doFilter(request, response);
}

@Override
public void destroy() {
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐