Redis Spring操作Redis时,发现key值出现 \xac\xed\x00\x05t\x00\tb
2017-05-10 11:09
525 查看
因为spring操作redis是在jedis客户端基础上进行的,而jedis客户端与redis交互的时候协议中定义是用byte类型交互,jedis中提供了string类型转为byte[]类型,但是看到spring-data-redis中
解决方法:
在配置时手动定义序列化的方法
RedisTemplate<K, V>在操作的时候k,v是泛型的,所以RedisTemplate中有了上面那段代码,在没有特殊定义的情况下,spring默认采用defaultSerializer = new JdkSerializationRedisSerializer();来对key,value进行序列化操作,在经过查看JdkSerializationRedisSerializer中对序列化的一系列操作
解决方法:
在配置时手动定义序列化的方法
<bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate"> <property name="connectionFactory" ref="jedisConnectionFactory"/> <property name="keySerializer"> <bean class="org.springframework.data.redis.serializer.StringRedisSerializer"/> </property> <property name="valueSerializer"> <bean class="org.springframework.data.redis.serializer.StringRedisSerializer"/> </property> <property name="hashKeySerializer"> <bean class="org.springframework.data.redis.serializer.StringRedisSerializer"/> </property> <property name="hashValueSerializer"> <bean class="org.springframework.data.redis.serializer.StringRedisSerializer"/> </property> </bean>
相关文章推荐
- Spring Data操作Redis时,发现key值出现 \xac\xed\x00\x05t\x00\tb
- Spring Data操作Redis时,发现key值出现 \xac\xed\x00\x05t\x00\tb
- Spring Data操作Redis时,发现key值出现 \xac\xed\x00\x05t\x00\tb
- Spring Data操作Redis时,发现key值出现 \xac\xed\x00\x05t\x00\tb
- Spring Data操作Redis时,发现key值出现 \xac\xed\x00\x05t\x00
- Spring Data操作Redis时,发现key值出现\xAC\xED\x00\x05t\x00
- Spring Data操作Redis时,发现key值出现 \xac\xed\x00\x05t\x00\tb
- Spring操作Redis时,发现key值出现 \xac\xed\x00\x05t\x00\tb
- Spring Data操作Redis时,发现key值出现 \xac\xed\x00\x05t\x00\tb
- Spring Data操作Redis时,发现key值出现 \xac\xed\x00\x05t\x00\tb
- Spring操作Redis时key值出现 \xac\xed\x00\x05t\x00\tb
- Redis学习手册(Key操作命令)
- Redis中-Key操作命令汇总
- Redis整理(1)之database/key操作
- Redis学习手册(Key操作命令)
- Redis学习手册(Key操作命令)
- sysctl -p的时候发现输出出现"net.bridge.bridge-nf-call-ip6tables" is an unknown key
- Redis常用的命令(二)------key的基本操作
- Redis数据库系列(二)------Redis对于key的操作命令
- Redis学习手册(Key操作命令)