SSM启动服务时将数据存入缓存
生活随笔
收集整理的這篇文章主要介紹了
SSM启动服务时将数据存入缓存
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
使用場(chǎng)景:
頁(yè)面要調(diào)用的是后端數(shù)據(jù)量非常大的接口,并且時(shí)間較長(zhǎng),這時(shí)項(xiàng)目沒有緩沖功能(例如redis),那么如果每次實(shí)時(shí)取數(shù)據(jù)給客戶的體驗(yàn)是非常不好的,這時(shí)我們可以按如下代碼,在初始化的時(shí)候就去數(shù)據(jù)庫(kù)取數(shù)據(jù),然后封裝到map或list。。。中,這樣什么時(shí)候用直接就可以拿到數(shù)據(jù)了。
package com.jeeplus.modules.ins.cache;import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.context.ApplicationListener; import org.springframework.context.event.ContextRefreshedEvent; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import org.springframework.stereotype.Controller; import org.springframework.stereotype.Service;/*** 啟動(dòng)服務(wù)時(shí)將字典存入緩存* @author 寧無(wú)敵**/ @Component public class CacheListener implements ApplicationListener<ContextRefreshedEvent>{private Logger log = LoggerFactory.getLogger(CacheListener.class);@Overridepublic void onApplicationEvent(ContextRefreshedEvent event) {if(event.getApplicationContext().getParent() == null){log.info("項(xiàng)目啟動(dòng)完成,準(zhǔn)備加載字典...");CacheManager.setDict();log.info("準(zhǔn)備獲取基金列表");CacheManager.setFundList();log.info("準(zhǔn)備獲取銀行列表");CacheManager.setBankList();log.info("準(zhǔn)備獲取Ta列表");CacheManager.setTaList();}}}?
思路:拿Servlet 舉例→ 在init()方法中就去調(diào)用數(shù)據(jù)庫(kù)取數(shù)據(jù),然后客戶在調(diào)用doPost()或doPost()的時(shí)候就可以拿到init()方法中獲取的數(shù)據(jù)了。
轉(zhuǎn)載于:https://www.cnblogs.com/cuijiade/p/9268265.html
總結(jié)
以上是生活随笔為你收集整理的SSM启动服务时将数据存入缓存的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基金定投选择a类还是c类 考虑它们的收费
- 下一篇: Tomcat下使用war包发布项目