项目中 Redis的key-value存值为inull问题分析(情况属个例)
代码如下:if ( StringUtils.isNotBlank(key) && pnupCacheClient.exists(key)) { pnupCacheClient.set(key, null); log.info("解绑清除redis二维码缓存执行完毕"); }该段代码在本地测试成功 但是放到linux系
·
代码如下:
if ( StringUtils.isNotBlank(key) && pnupCacheClient.exists(key)) {
pnupCacheClient.set(key, null);
log.info("解绑清除redis二维码缓存执行完毕");
}
该段代码在本地测试成功 但是放到linux系统执行曝出了redis的value can not be null的异常,测试和开发一个redis;
然后在想是不是环境问题引起的;先抛开一边。先修改代码把null改为""空串;linux执行成功了;
okay,来分析一哈原因
环境测试和开发是一个redis ,开发造的数据redis中的key是不存在的,但测试数据中redis中存在key,因此开发跑的时候if判断key是否存在,就直接跳过了set 方法,而测试数据会执行set 方法;就会曝出这个redis的value can not be null的异常;
问题分析完成!
更多推荐
已为社区贡献1条内容
所有评论(0)