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

Java中redisTemplate注入失敗NullPointerException異常問題解決

 更新時間:2023年08月29日 11:57:41   作者:學(xué)徒630  
這篇文章主要介紹了Java中redisTemplate注入失敗NullPointerException異常問題解決,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

前言: 

今天遇到一個需求,要求將數(shù)據(jù)庫中的一堆數(shù)據(jù)進行一個根據(jù)區(qū)域劃分,因此需要將數(shù)據(jù)庫中的數(shù)據(jù)進行劃分后再將熱數(shù)據(jù)丟到redis中進行一個緩存處理,由于涉及到一個分頁提取的操作,所以這里存在redis中就采用List的結(jié)構(gòu),這里采用redisTemplate來實現(xiàn)數(shù)據(jù)的存儲和取出

問題出現(xiàn):

如下,在一番正確的環(huán)境配置后,最后通過 @Resource 來注入就可以進行使用了嘛

@Resource
private RedisTemplate redisTemplate;

但是最后的結(jié)果卻是出現(xiàn) java.lang.NullPointerException 異常,原因是redisTemplate沒有注入成功。

解決方案:

通過@PostConstruct注解初始化實例

@PostConstruct注解

用于在依賴注入完成后執(zhí)行初始化操作的方法上。當(dāng)一個bean被實例化并且所有的依賴注入完成后,被@PostConstruct注解標(biāo)記的方法將會被自動調(diào)用。這個注解通常用于執(zhí)行一些初始化任務(wù),例如初始化成員變量或者建立與其他組件的連接。

    @Resource
    private RedisTemplate<String, T> redisTemplate;
    public static RedisTemplate redis;
    @PostConstruct
    public void getRedisTemplate() {
        redis = this.redisTemplate;
    }

這樣子再次運行就可以發(fā)現(xiàn),redis 變量就被成功注入啦~

工具類積累:

針對這種存儲java對象集合到redis的List結(jié)構(gòu)中的需求,這里總結(jié)了一個工具類給大家使用:

public class RedisUtil<T> {
    @Resource
    private RedisTemplate<String, T> redisTemplate;
    public static RedisTemplate redis;
    @PostConstruct
    public void getRedisTemplate() {
        redis = this.redisTemplate;
    }
    /**
     * 將對象的列表數(shù)據(jù)存入redis中的雙向列表中
     */
    public void savaDataListToRedisList(String key, List<T> list) {
        // 設(shè)置Key的String序列化
        redis.setKeySerializer(RedisSerializer.string());
        redis.opsForList().leftPushAll(key, list);
    }
    /**
     * 將對象的列表數(shù)據(jù)從redis中的雙向列表中獲取出來,通過分頁進行獲取
     */
    public List<T> getDataListFromRedisList(String key, Class<T> clazz) {
        // 設(shè)置Key的String序列化
        redis.setKeySerializer(RedisSerializer.string());
        return redis.opsForList().range(key, 0, -1);
    }
}

 到此這篇關(guān)于Java中redisTemplate注入失敗NullPointerException異常問題解決的文章就介紹到這了,更多相關(guān)Java redisTemplate注入失敗 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用C3P0改造JDBC對數(shù)據(jù)庫的連接

    使用C3P0改造JDBC對數(shù)據(jù)庫的連接

    這篇文章主要為大家詳細介紹了使用C3P0改造JDBC對數(shù)據(jù)庫的連接,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • Java中Supplier和Consumer接口的使用超詳細教程

    Java中Supplier和Consumer接口的使用超詳細教程

    文章闡述了Java8中Supplier與Consumer函數(shù)式接口的設(shè)計理念及應(yīng)用價值,強調(diào)其通過封裝數(shù)據(jù)供給與消費邏輯,提升代碼靈活性與可維護性,對比傳統(tǒng)匿名內(nèi)部類展現(xiàn)簡潔優(yōu)勢,并在策略、觀察者等設(shè)計模式實現(xiàn)高效應(yīng)用,為函數(shù)式編程提供標(biāo)準(zhǔn)化工具,感興趣的朋友跟隨小編一起看看吧
    2025-08-08
  • Spring AOP實現(xiàn)功能權(quán)限校驗功能的示例代碼

    Spring AOP實現(xiàn)功能權(quán)限校驗功能的示例代碼

    本篇文章主要介紹了Spring AOP實現(xiàn)功能權(quán)限校驗功能的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • Java synchronized重量級鎖實現(xiàn)過程淺析

    Java synchronized重量級鎖實現(xiàn)過程淺析

    這篇文章主要介紹了Java synchronized重量級鎖實現(xiàn)過程,synchronized是Java里的一個關(guān)鍵字,起到的一個效果是"監(jiān)視器鎖",它的功能就是保證操作的原子性,同時禁止指令重排序和保證內(nèi)存的可見性
    2023-02-02
  • 關(guān)于Filter中獲取請求體body后再次讀取的問題

    關(guān)于Filter中獲取請求體body后再次讀取的問題

    這篇文章主要介紹了關(guān)于Filter中獲取請求體body后再次讀取的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Java進程異常故障定位及排查過程

    Java進程異常故障定位及排查過程

    這篇文章主要介紹了Java進程異常故障定位及排查過程,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-07-07
  • Java實現(xiàn)JWT登錄認證的示例代碼

    Java實現(xiàn)JWT登錄認證的示例代碼

    Java中我們可以使用諸如JJWT這樣的庫來生成和驗證JWT,本文主要介紹了Java實現(xiàn)JWT登錄認證的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-04-04
  • spring cloud config和bus組件實現(xiàn)自動刷新功能

    spring cloud config和bus組件實現(xiàn)自動刷新功能

    今天通過本文給大家介紹spring cloud config和bus組件實現(xiàn)自動刷新功能,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2021-10-10
  • Java 連接Access數(shù)據(jù)庫的兩種方式

    Java 連接Access數(shù)據(jù)庫的兩種方式

    這篇文章主要介紹了Java 連接Access數(shù)據(jù)庫的兩種方式,本文著重講解使用JDBC連接操作Access數(shù)據(jù)庫,需要的朋友可以參考下
    2015-06-06
  • 如何在mapper文件中使用in("str1","str2")

    如何在mapper文件中使用in("str1","str2")

    這篇文章主要介紹了如何在mapper文件中使用in("str1","str2"),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01

最新評論

革吉县| 锦屏县| 定陶县| 铜川市| 永登县| 江川县| 武鸣县| 正镶白旗| 虎林市| 通化市| 宾阳县| 清河县| 漯河市| 柳河县| 鹤壁市| 杭锦旗| 无为县| 隆回县| 柳林县| 永泰县| 曲麻莱县| 湘阴县| 德格县| 施甸县| 天柱县| 贡觉县| 阿尔山市| 雷波县| 乡城县| 大邑县| 英山县| 天水市| 芒康县| 岳池县| 恭城| 岗巴县| 昭觉县| 巩义市| 卢湾区| 新蔡县| 龙山县|