SpringBoot中的ApplicationListener事件监听器使用详解
ApplicationListener
ApplicationListener是应用程序的事件监听器,继承自java.util.EventListener标准接口,采用观察者设计模式。
从spring3.0开始,ApplicationListener可以指定要监听的事件类型,当spring的上下文环境ApplicationContext时,当指定事件发布的时候,对应事件的事件监听器将被调用。
使用ApplicationListener需要三元素,事件,监听,事件发布。
ApplicationListener应用
1.新建事件
继承自ApplicationEvent .
public class TestApplicationEvent extends ApplicationEvent { /** * Create a new ApplicationEvent. * * @param test the object on which the event initially occurred (never {@code null}) */ public TestApplicationEvent(TestApplication test) { super(test); } }
2.新建监听器
实现ApplicationListener指定要监听的事件类型,监听器必须注入容器当中可以使用注解方式(例如:@Component),或者在资源路径下新建META-INF/spring.factories文件导入
@Component public class TestApplicationListener implements ApplicationListener<TestApplicationEvent> { @Override public void onApplicationEvent(TestApplicationEvent event) { System.out.println(event.getSource()); } }
3.事件发布
当spring应用上下文环境初始化完毕,进行事件的发布
@SpringBootApplication public class CommonsTestApplication { public static void main(String[] args) { ConfigurableApplicationContext applicationContext = SpringApplication .run(CommonsTestApplication.class, args); TestApplication testApplication = new TestApplication(); testApplication.setName("zhangsan"); testApplication.setAge(23); TestApplicationEvent testApplicationEvent = new TestApplicationEvent(testApplication); applicationContext.publishEvent(testApplicationEvent);//事件发布时,指定的监听器就进行接收 } }
4.启动程序
当容器初始化完毕后,发布事件,事件监听器进行接收。
到此这篇关于SpringBoot中的ApplicationListener事件监听器使用详解的文章就介绍到这了,更多相关ApplicationListener事件监听器使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SpringBoot3整合Hutool-captcha实现图形验证码
在整合技术框架的时候,想找一个图形验证码相关的框架,看到很多验证码的maven库不再更新了或中央仓库下载不下来,还需要多引入依赖,后面看到了Hutool图形验证码(Hutool-captcha)中对验证码的实现,所以本文介绍了SpringBoot3整合Hutool-captcha实现图形验证码2024-11-11
最新评论