- 论坛徽章:
- 0
|
设置不使用缓存的过滤器(j2ee)
这是我在项目实施过程中编写的一个比较通用的过滤器,在此与大家共享。
功能描述
将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; /** * 使浏览器不缓存页面信息的过滤器<br> * 创建日期:2012-01-10 * * @author <a href="mailto:hemingwang0902@126.com">何明旺</a> */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() { }}
复制代码 |
|