redisTemplate.ophotoshopForValue().get(KEY)从Redis取出的值为null 存入的key被加上了引号
省流
1.用StringRedisTemplate,且变量类型确认为String
2.变量值是否自带引号
说明
用redisTemplate.opsForValue().get(KEY)从Redis中取出的值为null(不管是RedisTemplate还是StringRedisTemplate)
仔细一看发现:存入redis后,key左右多了个双引号。
测试了一下必须加上引号才能取出来,不然就是null
解决(可能的原因)
以下不是按顺序的。每一点对应一种情况。仅供参考,有错轻喷
1.换RedisTemplate为StringRedisTemplate就可以。
原因如下(摘自其他文章)RedisTemplate使用的是JdkSerializationRedisSerializer 存入数据会将数据先序列化成字节数组然后在存入Redis数据库。
2.如果用RedisTemplate,需要作一些配置,大致是修改序列化的类(以下代码只是简单说一下,具体可以看下别人的文章)
//template.setKeySerializer(jackson2JsonRedisSerializer);
//使用StringRedisSerializer来序列化和反序列化redis的key值
template.setKeySerializer(new StringRedisSerializer());
3.如果用的是StringRedisTemplate(只能支持String),一定要检查你set的key和value是不是String,否则的话总是加上引号。
4.检查前后端代码。看变量是不是本来就自带双引号。
补充
我就是因为最后两点,没检查好变量类型和变量值,而且基础不扎实,前后端传数据的时候想当然了。
前后端代码截取片段如下:
//前端。请求Ajax时,其中的data。email是一个变量,字符串,存了邮箱地址
//data : JSON.stringify(email),
data : JSON.stringify({"email":email}),
//后端,实际上是post请求
@RequestMapping("/send")
public R send(@RequestBody String email){}
这里前后端有问题的。假设email值为"123@qq.com",
对于data : JSON.stringify(email)
,传到后端的时候,后端email变量就是="“123@qq.com”"
对于data : JSON.stringify({"email":email})
,后端email变量就是="{“email”:“123@qq.com”}",
因为它直接把前端传过来的整个放进后端email变量了。存进redis的时候自然有双引号。
这里,最好是后端直接用一个vo对象接收,前端用data : JSON.stringify({"email":email})
参考
RedisTemplate.opsForHash().entries(hashkey)方法出现多双引号序列问题
解决redis redistemplate KEY为字符串是多双引号的问题
redis使用Jackson2JsonRedisSerializer序列化问题
RedisTemplate序列化StringRedisSerializer只能支持String的坑
StringRedisTemplate 和RedisTemplate 对比分析
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhfhfhhh
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13