Spring Boot提供了多种内置监听器,同时也支持自定义监听器。自定义监听器需要实现ApplicationListener接口,同时在Spring Boot应用程序中配置自定义监听器,以便在特定的应用程序事件发生时进行操作,比如读取配置文件、初始化数据等。自定义监听器可以帮助开发人员监控应用程序的运行状态,提高应用程序的可靠性和稳定性。同时,它也为开发人员提供了一个扩展Spring Boot应用程序的方式。
一、创建自定义监听器
创建自定监听器MyApplicationListener,继承ApplicationListener类。在onApplicationEvent方法里我们利用RedisUtil工具类往Redis里写入数据。
MyApplicationListener.java代码:
package com.listener;
import com.util.RedisUtil;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextRefreshedEvent;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@Component
public class MyApplicationListener implements ApplicationListener<ContextRefreshedEvent> {
@Resource
private RedisUtil redisUtil;
@Override
public void onApplicationEvent(ContextRefreshedEvent event) {
// Spring Boot 应用启动后执行该方法
System.out.println("Spring Boot 应用启动...");
// 将数据存入 Redis 中
redisUtil.set("key", "value", 300); //设置key为value,有效期为300秒
System.out.println("将数据存入 Redis 中...");
}
}
二、测试监听器
接下来,我们测试监听器是否在项目加载时自动运行。
1、启动项目,观察控制台,看到我们的log已经被打出了。
2、我们再去访问Reids服务,看内容是否已经被存入Redis,看到已经被存入。
到此,我们自定义监听器就配置完成了。
Damon, Chinese, Liu Guangzhi, Software development engineer, CSDN quality creator, Ali Cloud expert blogger, Microsoft Technology Associate, Good at C#, Java, PHP, Python, etc, Love sports, Workaholic, Communist.