1. 问题
在使用RedisTemplate 保存Set类型的数据时候出现保存的key和value被序列化了,
public long sSet(String key, String... values) {
try {
return redisTemplate.opsForSet().add(key, values);
} catch (Exception e) {
LOGGER.error("异常={}", e);
return 0;
}
}
例如期望存入的key是 ai_dcs:gray🏫set,结果存入的
smembers"\xac\xed\x00\x05t\x00\x16ai_dcs:gray🏫set"
1)“\xac\xed\x00\x05t\x00\x131010000001000000004”
2)“\xac\xed\x00\x05t\x00\x131110000001000000660”
key被序列化了,value也被序列化了
解决办法
换成stringRedisTemplate 之后在不会出现类似 这样的 \xac\xed\x00\x05t 的序列化符号
public long sSet(String key, String... values) {
try {
return stringRedisTemplate.opsForSet().add(key, values);
} catch (Exception e) {
LOGGER.error("异常={}", e);
return 0;
}
}