整合Redis
- pom依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
<version>2.3.2.RELEASE</version>
</dependency>
- application.yml配置
spring:
redis:
# Redis数据库索引
database: 0
host: 127.0.0.1
port: 6379
password:
jedis:
pool:
# 连接池最大连接(负值表示没有限制)
max-active: 8
# 连接池最大堵塞等待时间(负值表示没有限制)
max-wait: -1
# 连接池最大空闲连接
max-idle: 8
min-idle: 0
# 连接超时时间(毫秒)
timeout: 1200
- 新建配置类:修改RedisTemplate序列化策略
@Configuration
public class RedisConfig {
@Bean
@SuppressWarnings("all")
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
RedisTemplate<String, Object> template = new RedisTemplate<>();
template.setConnectionFactory(factory);
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(om);
StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
// key采用String序列化方式
template.setKeySerializer(stringRedisSerializer);
template.setHashKeySerializer(stringRedisSerializer);
// 值采用jackjson序列化方式
template.setValueSerializer(jackson2JsonRedisSerializer);
template.setHashValueSerializer(jackson2JsonRedisSerializer);
template.afterPropertiesSet();
return template;
}
}
- 注入即可使用
@Autowired
private RedisTemplate redisTemplate;
RedisTemplate 使用参考
链接: https://blog.csdn.net/sinat_22797429/article/details/89196933.