Java乔晓松使用Filter过滤器清除网页缓存

package www.csdn.dbshop.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;


public class CacheFilter implements Filter {


	public void destroy() {
		System.out.println("缓存Filter------销毁操作");


	}


	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {
		System.out.println("清除缓存................");
		//response对象
		HttpServletResponse res = (HttpServletResponse) response;
		// 设定网页的到期时间,一旦过期则必须到服务器上重新调用
		res.setDateHeader("Expires", -1);
		// Cache-Control 指定请求和响应应遵循的缓存机制 no-cache指示请求或响应消息是不能缓存的
		res.setHeader("Cache-Control", "no-cache");
		// 用于设定禁止浏览器从本地缓存中调用页面内容,设定后一旦离开页面就无法从Cache中再调出
		res.setHeader("Pragma", "no-cache");
		// 放行
		chain.doFilter(request, res);


	}


	public void init(FilterConfig filterConfig) throws ServletException {
		System.out.println("初始化数据-----缓存清除");


	}


}



原文地址:https://www.cnblogs.com/javawebsoa/p/3042328.html