springboot监听器

首先创建类,定义一个事件,继承ApplicationEvent类实现方法

/**
* 定义一个事件
*/
public class MsgEvent extends ApplicationEvent {
public MsgEvent(Object source) {
super(source);
}
}

定义一个监听者,实现接口ApplicationListener,实现方法,传入MsgEvent这个事件

1 @Component
2 public class EmailListener implements ApplicationListener<MsgEvent> {
3     @Override
4     public void onApplicationEvent(MsgEvent event) {
5         String source = (String) event.getSource();
6         System.out.println(source + "已经收到您的订单");
7     }
8 }
Controller层实现ApplicationContextAware接口
@RestController
public class UserController implements ApplicationContextAware {


    private ApplicationContext aware;

    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        this.aware = applicationContext;
    }

    @GetMapping("/hello")
    public String api(){
        aware.publishEvent(new MsgEvent("下单了"));
        return "下单成功";
    }
}

 

posted @ 2022-07-16 16:49  敲代码的空白格  阅读(636)  评论(0编辑  收藏  举报