1. 程式人生 > >StringBoot 整合Redis解決儲存亂碼(通過StringRedisSerializer來進行序列化)

StringBoot 整合Redis解決儲存亂碼(通過StringRedisSerializer來進行序列化)

pom檔案中引入的依賴是

<dependency>
		    <groupId>org.springframework.boot</groupId>
		    <artifactId>spring-boot-starter-redis</artifactId>
		    <version>1.4.7.RELEASE</version>
</dependency> 	

注意:

spring-boot-starter-data-redis

與spring-boot-starter-redis引入的包基本一致,都是基於Jedis的,所以沒區別。

第一種方法:

在你需要呼叫RedisTemplate的類中引入以下程式碼(通過StringRedisSerializer來進行序列化)

	@Autowired
	private  RedisTemplate<String, String> redisTemplate;
	
	@Autowired(required = false)
	public void setRedisTemplate(RedisTemplate redisTemplate) {
	    RedisSerializer stringSerializer = new StringRedisSerializer();
	    redisTemplate.setKeySerializer(stringSerializer);
	    redisTemplate.setValueSerializer(stringSerializer);
	    redisTemplate.setHashKeySerializer(stringSerializer);
	    redisTemplate.setHashValueSerializer(stringSerializer);
	    this.redisTemplate = redisTemplate;
	}

第二種:直接將

@Autowired
private StringRedisTemplate redisTemplate;

改成

@Autowired
private  RedisTemplate<String, String> redisTemplate;