代碼大致是這樣
@Autowired
private RedisTemplate redisTemplate;
public void test(){
//從redis上獲取key為"ceshi"的值
? ? ? ?String result =? redisTemplate.opsForValue().get("ceshi");
logger.info(result);
//向redis上放置"ceshi2"的數(shù)據(jù)
? ? ? ? redisTemplate.opsForValue().set("ceshi2","12345");
}
程序順利運(yùn)行秒拔,但是最后的結(jié)果是:null
以及redis上出現(xiàn)了一個亂碼的set數(shù)據(jù)
我不信邪捻爷,于是添加了
redisTemplate.hasKey("ceshi")-----------------結(jié)果是false
但是redisTemplate.hasKey("ceshi2")---------------結(jié)果是true
這說明我是成功連接上redis的。
那么應(yīng)該是亂碼的問題铸豁。
最后的結(jié)果是:
編碼格式的問題爱沟,我們只需要把ISO-8859-1轉(zhuǎn)變成UTF-8就行了
在redis執(zhí)行之前加入:
redisTemplate.setKeySerializer(new StringRedisSerializer());------------插入改變編碼
redisTemplate.setValueSerializer(new StringRedisSerializer());------------獲取改變編碼