加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 服务器 > 安全 > 正文

深入浅出Spring SpringBoot 案件监听机制

发布时间:2022-07-20 09:38:37 所属栏目:安全 来源:互联网
导读:事件监听机制可以理解为是一种观察者模式,有数据发布者(事件源)和数据接受者(监听器); 在Java中,事件对象都是继承java.util.EventObject对象,事件监听器都是java.util.EventListener实例; EventObject对象不提供默认构造器,需要外部传递source参数,即用
  事件监听机制可以理解为是一种观察者模式,有数据发布者(事件源)和数据接受者(监听器);
 
  在Java中,事件对象都是继承java.util.EventObject对象,事件监听器都是java.util.EventListener实例;
 
  EventObject对象不提供默认构造器,需要外部传递source参数,即用于记录并跟踪事件的来源;
 
  启动服务并发布事件:
 
  复制
  public class ApplicationEventBootstrap {
  
      public static void main(String[] args) {
          AnnotationConfigApplicationContext context =
                  new AnnotationConfigApplicationContext();
          // 注册自定义事件监听器
          context.addApplicationListener(new MyApplicationListener());
          // 启动上下文
          context.refresh();
          // 发布事件,事件源为Context
          context.publishEvent(new MyApplicationEvent(context));
 
  复制
  public class ApplicationEventBootstrap {
  
      public static void main(String[] args) {
          AnnotationConfigApplicationContext context =
                  new AnnotationConfigApplicationContext();
          // 注册自定义事件监听器
          context.register(MyApplicationListener2.class);
          // 启动上下文
          context.refresh();
          // 发布事件,事件源为Context
          context.publishEvent(new MyApplicationEvent(context));
          // 结束
 
  复制
  收到事件:com.xx.MyApplicationEvent[source=org.springframework.context.annotation.AnnotationConfigApplicationContext@cb0ed20, started on Sat May 16 16:32:04 CST 2020]
  1.
  通过实例可以看出,上面两种方式都可正常发布和接收事件。

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读