最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用 filter 機制給靜態(tài)資源 url 加上時間戳,來防止js和css文件的緩存問題

 更新時間:2016年05月29日 11:51:42   作者:digdeep  
這篇文章主要介紹了利用 filter 機制給靜態(tài)資源 url 加上時間戳,來防止js和css文件的緩存問題的相關資料,需要的朋友可以參考下

直接上代碼:

public class WeiXinFilter implements Filter{
private static Logger logger = LoggerFactory.getLogger(WeiXinFilter.class);
public void init(FilterConfig fConfig) throws ServletException {}
public void destroy() {}
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest)request;
HttpServletResponse resp = (HttpServletResponse)response;
String requestURL = req.getRequestURL().toString();
String queryStr = req.getQueryString();
// add timestamp to static resource, to avoid cache
if(requestURL != null && (requestURL.endsWith(".js") || requestURL.endsWith(".css"))){ // static resource
String newURL = null;
if(StringUtils.isNotBlank(queryStr) && queryStr.trim().indexOf(ParameterConfig.STATIC_TAIL) == -1){
newURL = requestURL + "?" + queryStr + "&" + ParameterConfig.STATIC_TAIL + new Date().getTime();
resp.sendRedirect(newURL);
// req.getRequestDispatcher(newURL).forward(request, response);
return;
}
if(StringUtils.isBlank(queryStr)){
newURL = requestURL + "?" + ParameterConfig.STATIC_TAIL + new Date().getTime();
resp.sendRedirect(newURL);
// req.getRequestDispatcher(newURL).forward(request, response);
return;
}
try{
chain.doFilter(request, response);
}catch(Exception e){
logger.error(e.toString());
}
return;
}
public class ParameterConfig
{
/** 靜態(tài)資源 為防止緩存,加上時間戳標志 */
public static final String STATIC_TAIL = "__oawx_t=";

配置下過濾器就行了,效果如下:

在開發(fā)階段還是比較有用的。

以上所述是小編給大家介紹的利用 filter 機制給靜態(tài)資源 url 加上時間戳,來防止js和css文件的緩存問題的相關內(nèi)容,希望能夠幫助到大家。

相關文章

  • SpringMVC之異常處理解讀

    SpringMVC之異常處理解讀

    這篇文章主要介紹了SpringMVC之異常處理解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • MyBatis-Plus使用ActiveRecord(AR)實現(xiàn)CRUD

    MyBatis-Plus使用ActiveRecord(AR)實現(xiàn)CRUD

    本文將結合實例代碼,介紹MyBatis-Plus使用ActiveRecord(AR)實現(xiàn)CRUD,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2021-07-07
  • Java實現(xiàn)跳轉(zhuǎn)到指定頁面的方法小結

    Java實現(xiàn)跳轉(zhuǎn)到指定頁面的方法小結

    在Java中,實現(xiàn)頁面跳轉(zhuǎn)主要涉及到Web開發(fā),而這通常通過使用Java的Web框架(如Servlet、Spring MVC)來完成,下面講解一下如何在不同的Java Web框架中實現(xiàn)頁面跳轉(zhuǎn),文中有詳細的代碼示例供大家參考,需要的朋友可以參考下
    2024-05-05
  • Jackson2的JsonSchema實現(xiàn)java實體類生成json方式

    Jackson2的JsonSchema實現(xiàn)java實體類生成json方式

    這篇文章主要介紹了Jackson2的JsonSchema實現(xiàn)java實體類生成json,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • 解決dubbo啟動報服務注冊失敗Failed?to?register?dubbo

    解決dubbo啟動報服務注冊失敗Failed?to?register?dubbo

    這篇文章主要介紹了解決dubbo啟動報服務注冊失敗Failed?to?register?dubbo問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Java 深入淺出掌握Map集合之雙列集合

    Java 深入淺出掌握Map集合之雙列集合

    雙列集合是每個元素都有鍵與值兩部分組成的集合,記錄的是鍵值對對應關系,即通過鍵可以找到值,鍵必須是唯一,值可以重復,接下來跟著小編具體了解吧
    2021-11-11
  • Dubbo Consumer引用服務示例代碼詳解

    Dubbo Consumer引用服務示例代碼詳解

    dubbo中引用遠程服務有兩種方式:服務直連(不經(jīng)過注冊中心)、基于注冊中心引用服務,在實際線上環(huán)境中我們基本上使用的都是基于注冊中心引用服務的方式,下面我們就圍繞該方式講解分析
    2023-03-03
  • 23種設計模式(22)java狀態(tài)模式

    23種設計模式(22)java狀態(tài)模式

    這篇文章主要為大家詳細介紹了23種設計模式之java狀態(tài)模式,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Spring Boot中Elasticsearch的連接配置原理與使用詳解

    Spring Boot中Elasticsearch的連接配置原理與使用詳解

    在Spring Boot中,我們可以通過Elasticsearch實現(xiàn)對數(shù)據(jù)的搜索和分析,本文將介紹Spring Boot中Elasticsearch的連接配置、原理和使用方法,感興趣的可以了解一下
    2023-09-09
  • 淺析Java中如何優(yōu)雅地處理null值

    淺析Java中如何優(yōu)雅地處理null值

    這篇文章主要為大家詳細介紹了如何結合 Lambda 表達式和 Optional,讓 Java 更優(yōu)雅地處理 null 值,感興趣的小伙伴可以跟隨小編一起學習一下
    2025-04-04

最新評論

上思县| 吴旗县| 郓城县| 图木舒克市| 含山县| 乳山市| 建平县| 井陉县| 达孜县| 嵩明县| 镇原县| 桃园县| 恩平市| 通榆县| 日喀则市| 徐闻县| 五台县| 林芝县| 江山市| 南郑县| 固镇县| 安塞县| 闽清县| 赫章县| 黄骅市| 安阳县| 海宁市| 鹤山市| 镇坪县| 军事| 仪征市| 德保县| 龙陵县| 石柱| 赣榆县| 井冈山市| 黔南| 阜平县| 宁津县| 玛沁县| 大埔区|