亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JS實現(xiàn)前端緩存的方法

 更新時間:2017年09月21日 10:25:43   作者:Adam__Smith  
這篇文章主要為大家詳細介紹了JS實現(xiàn)前端緩存的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下

在前端瀏覽器中,有些數(shù)據(jù)(比如數(shù)據(jù)字典中的數(shù)據(jù)),可以在第一次請求的時候全部拿過來保存在js對象中,以后需要的時候就不用每次都去請求服務器了。對于那些大量使用數(shù)據(jù)字典來填充下拉框的頁面,這種方法可以極大地減少對服務器的訪問。這種方法特別適用于使用iframe的框架。

具體實現(xiàn)思路和方法:

創(chuàng)建一個cache.js文件:

1、前端頁面,定義那些數(shù)據(jù)需要一次性拿到前端緩存,定義一個對象來保存這些數(shù)據(jù):

/**
 * 定義需要在用戶登錄的時候獲取到本地的數(shù)據(jù)字典類別
 */
var clsCodes = {clsCodes :
    [BOOL,
     STATUS,
     USER_TYPE,
     REPORT_STATUS
   ]
};
 
/**
 * 獲取數(shù)據(jù)字典到本地
 */
var dicts;

2、前端頁面,定義一個函數(shù)來調用后臺接口獲取數(shù)據(jù),然后保存到本地緩存對象(dicts)中。

function getDicts() {
  $.post(getContextPath() + /api/sys/getDictList,
      clsCodes,
      function(resultBean, status, xhRequest) {
        if (resultBean.data != undefined) {
          dicts = resultBean.data;
        }
      }, 
      'json');
}

在主頁面加載的時候調用這個方法一次性獲取數(shù)據(jù)并緩存起來。這樣,以后需要同樣的數(shù)據(jù),就直接從本地對象dicts中獲取了。

后端Controller:

3、定義一個接口,根據(jù)前端的請求,查詢數(shù)據(jù)庫(或查詢服務器緩存,如下面例子中)獲取數(shù)據(jù)返回給前端:

/**
 * 根據(jù)多個分類編號獲取多個字典集合
 * @param clsCodes
 * @return {{clsCode : {code1:name1,code2:name2...}}, ...}
 */
@SuppressWarnings({ unchecked, rawtypes })
@ResponseBody
@RequestMapping(getDictList)
public ResultBean getDictList(@RequestParam(value = clsCodes[], required = true) String[] clsCodes) {
  ResultBean rb = new ResultBean();
   
  Map<string, string="">> dictCache = (Map<string, string="">>) CacheManager.getInstance().get(CacheConstants.DICT);
  Map dictMap = new LinkedHashMap<>(); //使用LinkedHashMap保證順序
 
  if(dictCache != null){
    for(String clsCode: clsCodes){
      dictMap.put(clsCode, dictCache.get(clsCode));
    }
  }else{
    rb.setMessage(緩存中拿不到字典信息!);
    rb.setSuccess(false);
  }
 
  rb.setData(dictMap);
  return rb;
}</string,></string,>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 全屏js頭像上傳插件源碼高清版

    全屏js頭像上傳插件源碼高清版

    這篇文章主要為大家詳細介紹了全屏js頭像上傳插件源碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-03-03
  • 小程序實現(xiàn)頁面跳轉與數(shù)據(jù)傳遞方案

    小程序實現(xiàn)頁面跳轉與數(shù)據(jù)傳遞方案

    在開發(fā)過程中經常會遇到在微信小程序的頁面跳轉以及數(shù)據(jù)傳遞的知識點,所以下面這篇文章主要給大家介紹了關于小程序實現(xiàn)頁面跳轉與數(shù)據(jù)傳遞的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-09-09
  • js實現(xiàn)加載頁面就自動觸發(fā)超鏈接的示例

    js實現(xiàn)加載頁面就自動觸發(fā)超鏈接的示例

    下面小編就為大家?guī)硪黄猨s實現(xiàn)加載頁面就自動觸發(fā)超鏈接的示例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • JavaScript 中如何將秒轉換為分秒

    JavaScript 中如何將秒轉換為分秒

    JavaScript中將秒轉換為分鐘和秒,通過將秒數(shù)除以 60 得到整分鐘數(shù),獲取剩余的秒數(shù),本文通過實例代碼介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-09-09
  • layui輸入框中只允許輸入整數(shù)的實現(xiàn)方法

    layui輸入框中只允許輸入整數(shù)的實現(xiàn)方法

    今天小編就為大家分享一篇layui輸入框中只允許輸入整數(shù)的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • Three.js入門之hello world以及如何繪制線

    Three.js入門之hello world以及如何繪制線

    這篇文章主要給大家介紹了關于Three.js入門之hello world以及如何繪制線的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-09-09
  • js實現(xiàn)表單及時驗證功能 用戶信息立即驗證

    js實現(xiàn)表單及時驗證功能 用戶信息立即驗證

    這篇文章主要為大家詳細介紹了js實現(xiàn)表單及時驗證功能,在輸入后就可以立即驗證,含用戶類型,性別,愛好等驗證,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 微信小程序動態(tài)設置導航欄標題的實現(xiàn)步驟

    微信小程序動態(tài)設置導航欄標題的實現(xiàn)步驟

    實際開發(fā)中很多時候我們需要通過上個頁面?zhèn)鬟^來的值動態(tài)的更改標題欄文字,下面這篇文章主要給大家介紹了關于微信小程序動態(tài)設置導航欄標題的實現(xiàn)步驟,需要的朋友可以參考下
    2023-02-02
  • 微信小程序中使用 async/await的方法實例分析

    微信小程序中使用 async/await的方法實例分析

    這篇文章主要介紹了微信小程序中使用 async/await的方法,結合實例形式分析了微信小程序中async/await的功能、使用方法及操作注意事項,需要的朋友可以參考下
    2020-05-05
  • 紅米手機搶購的js代碼

    紅米手機搶購的js代碼

    這篇文章主要介紹了紅米手機搶購時返回的js代碼,制作紅米搶購軟件時可以用到,,需要的朋友可以參考下
    2014-03-03

最新評論