分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

Filter 禁止浏览器缓存动态资源,例如JSP资源 -学习笔记

发布时间:2023-09-06 01:50责任编辑:沈小雨关键词:浏览器缓存
当访问一个web资源时,没有得到对应的结果,有可能是Filter没有放行资源
静态资源和动态资源进行不同的缓存处理,代码如下:====NO2判段是否以jsp结尾 处

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;//禁止浏览器缓存动态资源,例如JSP资源public class FilterDemo5 implements Filter { ???//思路 ???private FilterConfig filterConfig; ???public void init(FilterConfig filterConfig) throws ServletException { ???????this.filterConfig = filterConfig; ???} ???public void doFilter(ServletRequest req, ServletResponse res,FilterChain chain) throws IOException, ServletException { ???????//NO将父子接口强转 ???????HttpServletRequest request = (HttpServletRequest) req; ???????HttpServletResponse response = (HttpServletResponse) res; ???????//NO1取得客户端访问的资源的URI,形式/day04/login.jsp ???????//http: ???????String uri = request.getRequestURI(); ???????//静态资源和动态资源进行不同的缓存处理,代码如下: ???????//NO2判段是否以jsp结尾,即动态资源 ???????if(uri!=null && uri.endsWith("jsp")){ ???????????//NO3如果是动态资源,设置三个响应头通知浏览器不缓存 ???????????response.setHeader("expires","-1"); ???????????response.setHeader("cache-control","no-cache"); ???????????response.setHeader("pragma","no-cache"); ???????}else if(uri!=null && uri.endsWith("html")){ ???????????//NO4如果是静态资源,缓存一定的时间 ???????????String strHtml = filterConfig.getInitParameter("html"); ???????????long time = System.currentTimeMillis()+Integer.parseInt(strHtml)*1000; ???????????//time为毫秒值 ???????????response.setDateHeader("expires",time); ???????????response.setHeader("cache-control",time/1000+""); ???????????response.setHeader("pragma",time/1000+""); ???????} ???????//NO5放行资源 ???????chain.doFilter(request,response); ???} ???public void destroy() { ???}}

Filter 禁止浏览器缓存动态资源,例如JSP资源 -学习笔记

原文地址:http://blog.51cto.com/357712148/2105116

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved