我最近写了一个项目,项目中要禁止缓存jsp页,于是我到网上查了一下,在过滤器中实现,代码如下
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
String encoding = config.getInitParameter("encoding");//从配置文件从读取编码格式
request.setCharacterEncoding(encoding);//设置编码
((HttpServletResponse)response).setHeader("Pragma","No-cache");
((HttpServletResponse)response).setHeader("Cache-Control","no-cache");
((HttpServletResponse)response).setHeader("Expires","0");//禁止缓存
chain.doFilter(request, response);
}
效果成实现,页面已经不缓存,但是有个问题
ServletResponse 和 HttpServletResponse 是继承关系么?public interface HttpServletResponseextends ServletResponse javaee api 是这样写的 (HttpServletResponse)response ?? 这个不相当于父类强转成子类么??怎么还能实现,,求高人解答!
我只知道这两个都是接口 ServletResponse HttpServletResponse
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
String encoding = config.getInitParameter("encoding");//从配置文件从读取编码格式
request.setCharacterEncoding(encoding);//设置编码
((HttpServletResponse)response).setHeader("Pragma","No-cache");
((HttpServletResponse)response).setHeader("Cache-Control","no-cache");
((HttpServletResponse)response).setHeader("Expires","0");//禁止缓存
chain.doFilter(request, response);
}
效果成实现,页面已经不缓存,但是有个问题
ServletResponse 和 HttpServletResponse 是继承关系么?public interface HttpServletResponseextends ServletResponse javaee api 是这样写的 (HttpServletResponse)response ?? 这个不相当于父类强转成子类么??怎么还能实现,,求高人解答!
我只知道这两个都是接口 ServletResponse HttpServletResponse
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货