Spring中如何使用ApplicationListener
                                            这篇文章主要为大家展示了Spring中如何使用ApplicationListener,内容简而易懂,希望大家可以学习一下,学习完之后肯定会有收获的,下面让小编带大家一起来看看吧。
东兰网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、响应式网站建设等网站项目制作,到程序开发,运营维护。创新互联从2013年创立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
介绍
Spring ApplicationListener 是Spring事件机制的一部分,与ApplicationEvent抽象类结合完成ApplicationContext的事件通知机制.
ContextRefreshedEvent事件监听
以Spring的内置事件ContextRefreshedEvent为例,当ApplicationContext被初始化或刷新时,会触发ContextRefreshedEvent事件.如下代码示例:
@Component public class LearnListener implements ApplicationListener{ @Override public void onApplicationEvent(ContextRefreshedEvent event) { //获取所有的bean String[] definitionNames = event.getApplicationContext().getBeanDefinitionNames(); for (String name : definitionNames) { //打印名称 System.out.println("name = " + name); } } } 
自定义事件
代码
//继承ApplicationEvent 抽象类就可以自定义事件模型
public class MyEvent extends ApplicationEvent {
 
  private Long id;
  private String message;
  public MyEvent(Object source) {
    super(source);
  }
  public MyEvent(Object source, Long id, String message) {
    super(source);
    this.id = id;
    this.message = message;
  }
  //get set 方法省略
}//实现ApplicationListener接口 @Component public class MyListener implements ApplicationListener{ @Override public void onApplicationEvent(MyEvent event) { System.out.println("监听到事件: "+event.getId()+"\t"+event.getMessage()); } } 
测试
@SpringBootTest
@RunWith(SpringRunner.class)
public class ListenerTest {
  @Autowired
  private ApplicationContext applicationContext;
  @Test
  public void testListenner() {
    MyEvent myEvent = new MyEvent("myEvent", 9527L, "十二点了 该吃饭了~");
    applicationContext.publishEvent(myEvent);
   // System.out.println("发送结束");
  }
}结果

以上就是关于Spring中如何使用ApplicationListener的内容,如果你们有学习到知识或者技能,可以把它分享出去让更多的人看到。
当前题目:Spring中如何使用ApplicationListener
标题URL:http://www.scyingshan.cn/article/isjoep.html

 建站
建站
 咨询
咨询 售后
售后
 建站咨询
建站咨询 
 