国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

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

2024-05-06 15:26:24
字體:
供稿:網(wǎng)友

在前端瀏覽器中,有些數(shù)據(jù)(比如數(shù)據(jù)字典中的數(shù)據(jù)),可以在第一次請求的時候全部拿過來保存在js對象中,以后需要的時候就不用每次都去請求服務(wù)器了。對于那些大量使用數(shù)據(jù)字典來填充下拉框的頁面,這種方法可以極大地減少對服務(wù)器的訪問。這種方法特別適用于使用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ù)來調(diào)用后臺接口獲取數(shù)據(jù),然后保存到本地緩存對象(dicts)中。

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

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

后端Controller:

3、定義一個接口,根據(jù)前端的請求,查詢數(shù)據(jù)庫(或查詢服務(wù)器緩存,如下面例子中)獲取數(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,>

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持錯新站長站。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 若羌县| 峨眉山市| 武汉市| 那坡县| 胶州市| 兰西县| 英德市| 石楼县| 石柱| 武汉市| 乐清市| 建宁县| 舟山市| 昌乐县| 富平县| 万源市| 永清县| 车致| 红原县| 奉节县| 盈江县| 蒙阴县| 曲水县| 定西市| 花莲县| 大丰市| 古浪县| 丰县| 漾濞| 乐亭县| 军事| 阿瓦提县| 文安县| 舟曲县| 延安市| 鞍山市| 手机| 长治县| 柘荣县| 衡阳市| 大兴区|