这个是查看到的数据,每次插入hash的时候都会出现最后一个乱码key,并且value是空
public void setHashVal(final String key , final Map<String, String> map){
redisTemplate.execute(new RedisCallback<Object>() {
@Override
public Object doInRedis(RedisConnection connection)
throws DataAccessException {
byte[] param = redisTemplate.getStringSerializer().serialize(key);
if(connection.exists(param)){
connection.del(param);
}
BoundHashOperations<Serializable, byte[], byte[]> boundHashOperations = redisTemplate.boundHashOps(param);
Set<String> keySet = map.keySet();
for (String mapKey : keySet) {
boundHashOperations.put(redisTemplate.getStringSerializer().serialize(mapKey),
redisTemplate.getStringSerializer().serialize(mapKey));
}
connection.hMSet(param, boundHashOperations.entries());
return null;
}
});
}
这个是插入的代码,帮忙看看哪里会问题。或者是什么原因造成的
在redis-cli 里面执行monitor ,之后再执行会产生乱码的代码,看下控制台的输出。
也有可能是字符编码的问题
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。