本文主要是介绍【异常解决】缓存报错:Null key returned for cache operation (maybe you are using named params on classes withou,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Null key returned for cache operation的解决方案
- 一、背景描述
- 二、报错内容
- 三、报错原因
- 四、解决方案
一、背景描述
技术栈:Springboot(2.5.14) + MQTT(5.x) + Cache + MySQL
项目中有一个方法:根据设备id查询设备详情,它是一个非常高频使用的函数。为了减轻对数据库的压力,自然而然的就想到了使用缓存的技术。
二、报错内容
Null key returned for cache operation (maybe you are using named params on classes without debug info?) Builder
详细报错信息如下图所示:
三、报错原因
@Cacheable(key = "#id", unless = "#result==null")
注解中key的值即id值为null,即该方法的入参 id 为空,在调用方法时,不能传null值,传入 null 值的话就会报上述错误。
四、解决方案
在调用该方法的时候先判断id是否为空,id不为空时再调用该方法即可。
比如:
本文完结!
这篇关于【异常解决】缓存报错:Null key returned for cache operation (maybe you are using named params on classes withou的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!