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

SpringBoot項(xiàng)目啟動(dòng)時(shí)如何將需要數(shù)據(jù)添加到redis緩存

 更新時(shí)間:2026年04月12日 11:11:43   作者:!)>_<)!  
文章介紹了使用Java注解@PostConstruct進(jìn)行項(xiàng)目啟動(dòng)時(shí)加載,并使用Spring和Redis進(jìn)行數(shù)據(jù)緩存的操作,通過(guò)`setCacheObject`方法將數(shù)據(jù)存儲(chǔ)到Redis中,并提供了清空緩存的方法

首先項(xiàng)目啟動(dòng)時(shí)加載

這里使用了一個(gè)Java注解@PostConstruct@PostConstruct該注解被用來(lái)修飾一個(gè)非靜態(tài)的void()方法。

被@PostConstruct修飾的方法會(huì)在服務(wù)器加載Servlet的時(shí)候運(yùn)行,并且只會(huì)被服務(wù)器執(zhí)行一次。

    @PostConstruct
    public void init(){
        loadingCache();
    }

loadingCache方法里就是添加緩存的代碼

通過(guò)SpringUtils.getBean(RedisCache.class).setCacheObject(key,value)來(lái)添加緩存:

@Override
    public void loadingCache(){
        DvCode dvCode = new DvCode();
        List<DvCode> codeList = dvCodeMapper.selectDvCodeList(dvCode);
        codeList.stream().forEach(list->{
            SpringUtils.getBean(RedisCache.class).setCacheObject(Constants.NAME_KEY+list.getCode(),list.getName());
        });
    }

NAME_KEY是Constants里面添加的

是最終緩存到redis中的key值;

    /***
     code cache key
     */
    public static final String NAME_KEY = "code_name:";

這個(gè)時(shí)候就數(shù)據(jù)緩存到redis的操作就已經(jīng)完成了,重新啟動(dòng)項(xiàng)目后,在redis數(shù)據(jù)庫(kù)中就可以看到key為code_name的數(shù)據(jù)了。

怎么取用數(shù)據(jù)?

redisCache.getCacheObject(getCacheKey2Name(code));
 public static String getCacheKey2Name(String configKey)
    {
        return Constants.NAME_KEY + configKey;
    }

最后添加一個(gè)清空緩存數(shù)據(jù)的方法

	@Override
    public void clearAreaCodeCache(){
        Collection<String> keys = SpringUtils.getBean(RedisCache.class).keys(Constants.NAME_KEY + "*");
        SpringUtils.getBean(RedisCache.class).deleteObject(keys);
    }

如果我們?cè)陧?xiàng)目啟動(dòng)后更改了數(shù)據(jù)

又不想重新啟動(dòng)項(xiàng)目,有了添加和清空,這個(gè)問(wèn)題就很好解決了:

	@DeleteMapping("/refreshCache")
    public AjaxResult refreshCache()
    {
        dvCodeService.resetDictCache();
        return AjaxResult.success();
    }

前端搞個(gè)按鈕什么的,調(diào)用一下這個(gè)刷新緩存的接口就好啦。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

栖霞市| 高雄市| 靖宇县| 宣威市| 维西| 调兵山市| 华亭县| 海原县| 富源县| 凤庆县| 黄大仙区| 胶南市| 安图县| 阳曲县| 贺兰县| 偃师市| 金乡县| 项城市| 繁昌县| 土默特右旗| 民和| 扎囊县| 南部县| 张家港市| 卢湾区| 尼木县| 湘潭县| 安平县| 黔江区| 石楼县| 新津县| 栾城县| 吉林省| 霞浦县| 湄潭县| 明水县| 罗甸县| 健康| 平原县| 塔城市| 灵石县|