spring - RedisTemplate为Null报java.lang.NullPointerException

查看:2153
本文介绍了spring - RedisTemplate为Null报java.lang.NullPointerException的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

pom.xml:

    <!-- 添加redis支持 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-redis</artifactId>
    </dependency>
    <dependency>
        <groupId>redis.clients</groupId>
        <artifactId>jedis</artifactId>
        <version>2.6.2</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-redis</artifactId>
        <version>1.5.0.RELEASE</version>
    </dependency>

RedisCacheConfig.java:

   
   @Bean(name="jedisConnectionFactory")
    JedisConnectionFactory jedisConnectionFactory() {
        JedisConnectionFactory factory = new JedisConnectionFactory();
        return factory;
    }

    @Bean
    RedisTemplate<String, Object> redisTemplate() {
        RedisTemplate<String, Object> redisTemplate = new RedisTemplate<String, Object>();
        redisTemplate.setConnectionFactory(jedisConnectionFactory());
        return redisTemplate;
    }
    

工具类:

@SuppressWarnings("unchecked")
@Component
public class RedisUtil {
    @SuppressWarnings("rawtypes")
    
    @Autowired
    private RedisTemplate redisTemplate;
    
    public void test() {
         redisTemplate.opsForValue().set("q", 123);//这里的redisTemplate=null 不知为何?                          
    }
}

调用test()方法 报java.lang.NullPointerException 求指点明灯

解决方案

你用的是springboot集成,单元测试却是junit的,没有纳入springboot的环境,当然是有问题的了。

这篇关于spring - RedisTemplate为Null报java.lang.NullPointerException的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆