SpringBoot 2.7 .2实战基础 - 09 - 集成 Redis & 异步任务
1 集成Redis
《docker 安装 MySQL 和 Redis》一文已介绍如何在 Docker 中安装 Redis,本文就看看 SpringBoot 如何整合 Redis。SpringBoot 提供了整合 Redis 的 starter,使用非常简单。
1.1 添加依赖
在 pom.xml 中添加 redis 的 starter:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>
1.2 配置 Redis
修改 application.yml 文件,添加 Redis 的配置:
spring: redis: host: 127.0.0.1 port: 6379 username: password: timeout: 5000 jedis: pool: max-active: 3 max-idle: 3 min-idle: 1 max-wait: -1
1.3 添加配置
在 com.yygnb.demo.config
中创建 RedisConfig
,处理一些中文乱码问题。
com.yygnb.demo.config.RedisConfig
:
@Configuration public class RedisConfig { private final RedisTemplate redisTemplate; public RedisConfig(RedisTemplate redisTemplate) { this.redisTemplate = redisTemplate; } /** * 解决redis插入中文乱码 * @return */ @Bean public RedisTemplate<Serializable, Object> redisTemplateInit() { StringRedisSerializer stringRedisSerializer = new StringRedisSerializer(); redisTemplate.setKeySerializer(stringRedisSerializer); redisTemplate.setHashKeySerializer(stringRedisSerializer); GenericJackson2JsonRedisSerializer genericJackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer(); redisTemplate.setValueSerializer(genericJackson2JsonRedisSerializer); redisTemplate.setHashValueSerializer(genericJackson2JsonRedisSerializer); return redisTemplate; } }
1.4 封装 Redis 操作
可封装一些 Redis 的常见操作。
com.yygnb.demo.utils.RedisUtils
:
@RequiredArgsConstructor @Component public cl