实际上事件机制采用的就是设计模式中的观察者模式,https://blog.csdn.net/hc1285653662/article/details/125381326
一、Spring中的事件如何使用
1、定义一个事件继承 ApplicationContextEvent
public class MyEvent extends ApplicationContextEvent {
private String describe;
public MyEvent(ApplicationContext source,String describe) {
super(source);
this.describe = describe;
}
public String getDescribe() {
return describe;
}
}
2、向spring容器中注册该事件的监听器
@Component
public class MyEventListenner {
@EventListener(value = {MyEvent.class})
public void myEventListenner(MyEvent myEvent) {
System.out.println("监听到了myEvent事件 ----> desp:" + myEvent.getDescribe());
}
}
3、发布事件
@GetMapping("/test1")
public void test1() {
applicationContext.publishEvent(new MyEvent(applicationContext, "hello,我是houchenyayayya!!!"));
}