讲述了JavaSpring:事件,使用实现ApplicationListener来监听自定义事件
树图思维导图提供 JavaSpring-事件 在线思维导图免费制作,点击“编辑”按钮,可对 JavaSpring-事件 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:27f5a3bf195efdb1935df375718acdb6
JavaSpring-事件思维导图模板大纲
流程:
(1)自定义事件,集成ApplicationEvent。
(2)定义事件监听器,实现ApplicationListener。
(3)使用容器发布事件。
(1)自定义事件。
package com.wisely.highlight_spring4.ch2.event; public class DemoEvent extends ApplicationEvent{ private static final long serialVersionUID = 1L; private String msg; public DemoEvent(Object source,String msg) { super(source); this.msg = msg; } public String getMsg() { return msg; } public void setMsg(String msg) { this.msg = msg; } }
(2)事件监听器。
package com.wisely.highlight_spring4.ch2.event; @Component //1 实现ApplicationListener接口,并指定监听的事件类型。 public class DemoListener implements ApplicationListener<DemoEvent> { //2 使用onApplicationEvent方法对消息进行接受处理。 public void onApplicationEvent(DemoEvent event) { String msg = event.getMsg(); System.out.println("我(bean-demoListener)接收到了bean-demoPublisher发布的消息:"+ msg); } }
(3)事件发布类。
package com.wisely.highlight_spring4.ch2.event; @Component public class DemoPublisher { @Autowired ApplicationContext applicationContext; //1 public void publish(String msg){ applicationContext.publishEvent(new DemoEvent(this, msg)); //2 } }
(4)配置类。
package com.wisely.highlight_spring4.ch2.event; @Configuration @ComponentScan("com.wisely.highlight_spring4.ch2.event") public class EventConfig { }
(5)运行。
package com.wisely.highlight_spring4.ch2.event; public class Main { public static void main(String[] args) { AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(EventConfig.class); DemoPublisher demoPublisher = context.getBean(DemoPublisher.class); demoPublisher.publish("hello application event"); context.close(); } }
输出
我(bean-demoListener)接收到了bean-demoPublisher发布的消息:hello application event
树图思维导图提供 日本人房地产泡沫思维导图 在线思维导图免费制作,点击“编辑”按钮,可对 日本人房地产泡沫思维导图 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:12f61c215f40c70037b360a9c850fb4b
树图思维导图提供 十月份一例床旁超声不良事件原因分析 在线思维导图免费制作,点击“编辑”按钮,可对 十月份一例床旁超声不良事件原因分析 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:38ee7b5e5e341860178757578748a3a0