利用Java过滤器实现清理浏览器缓存

xiaoxiao2021-02-28  54

package cn.easted.edm.core.utils; 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; /** * @ClassName: NoCacheFilter * @Description: 清除浏览器缓存过滤器 * @author Wh * @date 2017年6月5日 上午9:18:45  */ public class NoCacheFilter implements Filter{     @Override     public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain)             throws IOException, ServletException {          HttpServletRequest request = (HttpServletRequest) req;             HttpServletResponse response = (HttpServletResponse) resp;             //禁止浏览器缓存所有动态页面             response.setHeader("Pragma","no-cache");                 response.setHeader("Cache-Control","no-cache");                 response.setDateHeader("Expires", -1);                chain.doFilter(request, response);     }     @Override     public void init(FilterConfig filterConfig) throws ServletException {         System.out.println("----过滤器初始化----");     }          @Override     public void destroy() {          System.out.println("----过滤器销毁----");     }

}

web.xml中配置:

    <filter>         <filter-name>NoCacheFilter</filter-name>         <filter-class>cn.easted.edm.core.utils.NoCacheFilter</filter-class>         <init-param>             <param-name>exclusions</param-name>             <!-- 排除统计干扰 -->             <param-value>*.gif,*.jpg,*.png,*.css,*.ico</param-value>         </init-param>     </filter>     <filter-mapping>         <filter-name>NoCacheFilter</filter-name>          <url-pattern>/*</url-pattern>     </filter-mapping>

转载请注明原文地址: https://www.6miu.com/read-85172.html

最新回复(0)