纵有疾风起
人生不言弃

SpringBoot事件监听

SpringBoot事件监听插图

代码演示:

SpringBoot事件监听插图1

package com.boot.event.eventdemo;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.context.ConfigurableApplicationContext;@SpringBootApplicationpublic class EventDemoApplication {    public static void main(String[] args) {        SpringApplication app = new SpringApplication(EventDemoApplication.class);        //第一种方式 添加监听事件        // app.addListeners(new MyApplicationListener());        ConfigurableApplicationContext context = app.run(args);        // 发布事件        context.publishEvent(new MyApplicationEvent(new Object()));        context.close();    }}
package com.boot.event.eventdemo;import org.springframework.context.event.ContextClosedEvent;import org.springframework.context.event.EventListener;import org.springframework.stereotype.Component;@Componentpublic class HandlerEvent {//第四种方式,最常用方式        @EventListener(MyApplicationEvent.class)    public void handlerEvent(MyApplicationEvent event) {        System.out.println("接受到了事件====:"+event.getClass());        System.out.println("接受到了事件====:"+event.getSource());    }    @EventListener(ContextClosedEvent.class)    public void handlerEvent1(Object event) {        System.out.println("接受到了事件:"+event.getClass());    }}
package com.boot.event.eventdemo;import org.springframework.context.ApplicationEvent;public class MyApplicationEvent extends ApplicationEvent {    public MyApplicationEvent(Object source) {        super(source);    }}
package com.boot.event.eventdemo;import org.springframework.context.ApplicationListener;//第二种方式 @Componentpublic class MyApplicationListener implements ApplicationListener<MyApplicationEvent> {    @Override    public void onApplicationEvent(MyApplicationEvent event) {        System.out.println("接受到了事件:"+event.getClass());        System.out.println("接受到了事件:"+event.getSource());    }}

application.properties

#第三种方式 
context.listener.classes=com.boot.event.eventdemo.MyApplicationListener

使用第四种方式配置监听器的打印结果:

SpringBoot事件监听插图2

 

文章转载于:https://www.cnblogs.com/lm970585581/p/9813651.html

原著是一个有趣的人,若有侵权,请通知删除

未经允许不得转载:起风网 » SpringBoot事件监听
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录