需求,java通过jedis操作redis,通过jedis的setex插入一个键值对到redis无法成功,但是返回ok,redis中找不到该key
情形描述:
为了对redis中的每个key的作用做区分,分别加了前缀,比如用户的key为: user:用户名。
下面就是我的错误点,因为key包含了“:” 符号,而我的值也包含了此符号 “:”,并且key的长度太长,用的uuid的值,所以没办法保存,以此为戒。
列子:jedis.setex("user:uudi","da:shuaige");
经测试,key中包含了一些特殊符号,如果值也包含了一些特殊符号,会有可能保存失败。
所以解决办法是key加符号标示,key不在加入特殊符号。
但是在命令行直接操作redis,key和value都可以包含特殊符号。
如有这方面的大神,请告知下原有。