Spring Cloud
事件驱动
package com.shanghai.springcloud20181022.event;
import org.springframework.context.ApplicationEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class SpringEventListener {
public static void main(String[] args) {
AnnotationConfigApplicationContext annotationConfigApplicationContext=new AnnotationConfigApplicationContext();
//增加监听器
annotationConfigApplicationContext.addApplicationListener(new WansonApplicationLister());
//上下文启动
annotationConfigApplicationContext.refresh();
//发布事件
annotationConfigApplicationContext.publishEvent(new WandonApplicationEvent("hello world"));
annotationConfigApplicationContext.publishEvent(new WandonApplicationEvent(2018));
annotationConfigApplicationContext.publishEvent(new WandonApplicationEvent(Math.PI));
}
private static class WansonApplicationLister implements ApplicationListener<WandonApplicationEvent>{
@Override
public void onApplicationEvent(WandonApplicationEvent wandonApplicationEvent) {
System.out.printf("WansonApplicationListener receives event source:%s\n\t\n",wandonApplicationEvent.getSource());
}
}
private static class WandonApplicationEvent extends ApplicationEvent{
public WandonApplicationEvent(Object source) {
super(source);
}
}
}
posted on 2018-10-22 14:28 Indian_Mysore 阅读(87) 评论(0) 编辑 收藏 举报