开发的时候遇到了一个细节上的问题,在类里自动注入JedisPool,调用的时候报了空指针异常。
Java 代码如下

    @Autowired
    private JedisPool jedisPool;

调用的时候报 java.lang.NullPointerException: null

我是因为JedisPool 没有在容器里初始化,在容器里没有这个东西调用的时候直接报空指针异常了。

解决办法如下:
在启动类或者配置文件给JedisPool 初始化

    @Bean
    public JedisPool redisPoolFactory() {
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        jedisPoolConfig.setMaxIdle(maxIdle);
        jedisPoolConfig.setMaxWaitMillis(maxWait);
        jedisPoolConfig.setMinIdle(minIdle);

        JedisPool jedisPool = new JedisPool(jedisPoolConfig, host, port, timeout, password);

        return jedisPool;
    }
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐