您的位置:首页 > 编程语言 > Java开发

springBoot事件监听

2019-04-20 15:08 585 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhou920786312/article/details/89417472

声明:代码是JavaEE开发的颠覆者 Spring Boot实战代码中的,我买了这书,并练习

1自定义事件

[code]public class DemoEvent extends ApplicationEvent{
private static final long serialVersionUID = 1L;
public String msg;

public DemoEvent(Object source,String msg) {
super(source);
this.msg = msg;
}
}

2定义监听者,对被监听的对象进行处理

[code]@Component
public class DemoListener implements ApplicationListener<DemoEvent> {//设置要监听的类
@Override
//对监听对象进行处理
public void onApplicationEvent(DemoEvent event) {
//被监听的对象
String msg = event.msg;
System.out.println("DemoListener监听到DemoEvent发布的消息:"+ msg);
}
}

3发布监听

[code]
@Component
public class DemoPublisher {
@Autowired
ApplicationContext applicationContext;
//发布事件
public void publish(String msg){
applicationContext.publishEvent(new DemoEvent(this, msg));
}

}

4配置类

[code]
@Configuration
@ComponentScan("com.wisely.highlight_spring4.ch2.event")
public class EventConfig {

}

测试

[code]package com.wisely.highlight_spring4.ch2.event;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class Main {
public static void main(String[] args) {
AnnotationConfigApplicationContext context =
new AnnotationConfigApplicationContext(EventConfig.class);
DemoPublisher demoPublisher = context.getBean(DemoPublisher.class);
demoPublisher.publish("你好");
context.close();
}
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: