Spring Publish Event和监听Event

时间:2021-10-09
本文章向大家介绍Spring Publish Event和监听Event,主要包括Spring Publish Event和监听Event使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
学习Nacos源码的时候 Nacos的服务变更 服务端会向客户端主动推送变更信息,监听变更而后推送信息 就是通过Spring Event实现的

-----------------Demo-----------------------------------------------------
@Service
public class TestServeric implements ApplicationContextAware, ApplicationListener<MyApplicationEvenet> {

ApplicationContext applicationContext;

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

public void testtestset() {
this.applicationContext.publishEvent(new MyApplicationEvenet(this, "test"));
}

public void pri() {
System.out.println("执行了");
}

@Override
public void onApplicationEvent(MyApplicationEvenet myApplicationListener) {
String s = myApplicationListener.getS();
System.out.println(s);

TestServeric source = (TestServeric) myApplicationListener.getSource();
source.pri();
}

}

------------------------MyApplicationEvent----------
public class MyApplicationEvenet extends ApplicationEvent {
String s;

public MyApplicationEvenet(Object source, String s) {
super(source);
this.s = s;
}

public String getS() {
return s;
}
}


原文地址:https://www.cnblogs.com/zhaoyuxuan66/p/15386970.html