解决Unboxing of'stringRedisTemplate.hasKey(xx)'may produce 'NullPointerException' 警告问题
作者:luobingit
文章介绍了在使用`stringRedisTemplate.hasKey(xx)`方法时可能会出现`NullPointerException`警告的原因,并提出了相应的解决方法
IDEA Unboxing of ‘stringRedisTemplate.hasKey(xx)’ may produce ‘NullPointerException’ 警告
闲来无事发现项目里面使用stringRedisTemplate操作redis的代码一直有警告,平时也没怎么在意,然后就顺手处理了一下。
这个警告大致的意思是拆箱时有可能空指针异常。
具体如下


看hasKey源码可知
hasKey方法返回一个对象包装器,但在if条件内使用它隐式将其取消装箱(即,将调用结果转换为原始值)。
如果由于某种原因该hasKey方法可能返回null,则会出现错误。
为了安全起见
可以按以下步骤检查密钥是否存在:
if (Boolean.TRUE.equals(redisTemplate.hasKey(XXXX)) {
}
redisTemplate或stringRedisTemplate其他返回包装类型Boolean的同理,比如下面这个:

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
- SpringBoot3.4.0无法找到StringRedisTemplate bean的问题Consider defining a bean of type ‘org.springframework
- SpringBoot混合使用StringRedisTemplate和RedisTemplate的坑及解决
- 使用StringRedisTemplate操作Redis方法详解
- Java中StringRedisTemplate和RedisTemplate的区别及使用方法
- SpringBoot整合Redis使用RedisTemplate和StringRedisTemplate
- 浅谈RedisTemplate和StringRedisTemplate的区别
