1、redis监听
1、部署redis,引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
2、配置文件配置redis
spring.redis.host=localhost
spring.redis.port=6379
spring.redis.database=0
3、编写redis监听配置类
@Slf4j
@Configuration
public class RedisListenerConfig {
@Bean
public RedisMessageListenerContainer container(RedisConnectionFactory redisConnectionFactory) {
RedisMessageListenerContainer container = new RedisMessageListenerContainer();
container.setConnectionFactory(redisConnectionFactory);
log.info("redis监听配置生效");
return container;
}
}
4、编写redis监听
@Slf4j
@Component
public class RedisListener extends KeyExpirationEventMessageListener {
@Autowired
StringRedisTemplate stringRedisTemplate;
public RedisListener(RedisMessageListenerContainer listenerContainer) {
super(listenerContainer);
}
@Override
public void onMessage(Message message, byte[] pattern) {
String expirationKey = message.toString();
if(expirationKey.startsWith("MyTestListen")){
log.info("过期的key为【{}】",expirationKey);
}
}
}