打開redis服務的配置文件 添加notify-keyspace-events Ex 如果是注釋了,就取消注釋
這個是在以下基礎上進行添加的
Spring整合redis:https://www.cnblogs.com/pxblog/p/12583703.html
在redis-context.xml 配置文件里增加
<!--設置key過期事件監聽--> <bean id="redisMessageListenerContainer" class="org.springframework.data.redis.listener.RedisMessageListenerContainer"> <property name="connectionFactory" ref="jedisConnectionFactory"/> </bean> <!-- 這個就是創建的類RedisKeyExpirationListener的路徑--> <bean id="redisKeyExpirationListener" class="com.redis.RedisKeyExpirationListener"> <constructor-arg name="listenerContainer" ref="redisMessageListenerContainer"/> </bean>
RedisKeyExpirationListener.java
package com.redis; import org.springframework.data.redis.connection.Message; import org.springframework.data.redis.listener.KeyExpirationEventMessageListener; import org.springframework.data.redis.listener.RedisMessageListenerContainer; import org.springframework.stereotype.Component; public class RedisKeyExpirationListener extends KeyExpirationEventMessageListener { public RedisKeyExpirationListener(RedisMessageListenerContainer listenerContainer) { super(listenerContainer); } /** * 針對 redis 數據失效事件,進行數據處理 * * @param message * @param pattern */ @Override public void onMessage(Message message, byte[] pattern) { System.out.println("過期"+message.toString()); } }
SpringBoot整合redis實現過期key監聽事件:https://www.cnblogs.com/pxblog/p/13559317.html