欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

前言: 

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

問題出現:

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

@Resource
private RedisTemplate redisTemplate;

但是最后的結果卻是出現 java.lang.NullPointerException 異常,原因是redisTemplate沒有注入成功。

解決方案:

通過@PostConstruct注解初始化實例

@PostConstruct注解

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

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

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

工具類積累:

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

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

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

相關文章

  • SpringBoot中的@EnableAutoConfiguration注解解析

    SpringBoot中的@EnableAutoConfiguration注解解析

    這篇文章主要介紹了SpringBoot中的@EnableAutoConfiguration注解解析,@EnableAutoConfiguration也是借助@Import的幫助,將所有符合自動配置條件的bean定義注冊到IoC容器,需要的朋友可以參考下
    2023-09-09
  • Spring Boot + Mybatis-Plus實現多數據源的方法

    Spring Boot + Mybatis-Plus實現多數據源的方法

    這篇文章主要介紹了Spring Boot + Mybatis-Plus實現多數據源的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • IntelliJ IDEA 2019.3激活破解的詳細方法(親測有效,可激活至 2089 年)

    IntelliJ IDEA 2019.3激活破解的詳細方法(親測有效,可激活至 2089&

    本教程適用于 JetBrains 全系列產品,包括 Pycharm、IDEA、WebStorm、Phpstorm、Datagrip、RubyMine、CLion、AppCode 等,本教程無需修改 hosts 文件,對IntelliJ IDEA 2019.3激活破解的詳細方法的相關知識感興趣的朋友一起看看吧
    2020-09-09
  • 配置gateway+nacos動態(tài)路由管理流程

    配置gateway+nacos動態(tài)路由管理流程

    這篇文章主要介紹了配置gateway+nacos動態(tài)路由管理流程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 詳解Java Spring各種依賴注入注解的區(qū)別

    詳解Java Spring各種依賴注入注解的區(qū)別

    這篇文章主要介紹了詳解Java Spring各種依賴注入注解的區(qū)別的相關資料,需要的朋友可以參考下
    2016-03-03
  • Java如何生成壓縮文件工具類

    Java如何生成壓縮文件工具類

    這篇文章主要介紹了Java如何生成壓縮文件工具類問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • 簡單聊一聊Spring中Bean別名的處理原理

    簡單聊一聊Spring中Bean別名的處理原理

    今天來和小伙伴們聊一聊 Spring 中關于 Bean 別名的處理邏輯,別名,顧名思義就是給一個 Bean 去兩個甚至多個名字,整體上來說,在 Spring 中,有兩種不同的別名定義方式,感興趣的小伙伴跟著小編一起來看看吧
    2023-09-09
  • Java中BEAN與EJB的區(qū)別淺析

    Java中BEAN與EJB的區(qū)別淺析

    這篇文章主要介紹了Java中BEAN與EJB的區(qū)別淺析,本文總結了它們之間的不同之處,需要的朋友可以參考下
    2015-03-03
  • 詳解jeefast和Mybatis實現二級聯動的問題

    詳解jeefast和Mybatis實現二級聯動的問題

    這篇文章主要介紹了詳解jeefast和Mybatis實現二級聯動的問題,本文通過圖文實例相結合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • 關于spring中單例Bean引用原型Bean產生的問題及解決

    關于spring中單例Bean引用原型Bean產生的問題及解決

    這篇文章主要介紹了關于spring中單例Bean引用原型Bean產生的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06

最新評論