Spring Boot学习笔记(八)spring中如何使用监听器(Listener)监听事件,完整例子

本文详细介绍了在Spring Boot中如何使用监听器(Listener)监听事件,从事件定义、非注解监听器到注解监听器和异步监听。通过实例展示了事件的发布与接收过程,以及如何通过@Async实现异步监听。
摘要由CSDN通过智能技术生成

1、监听的组成

要想顺利的创建监听器,并起作用,这个过程中需要这样几个角色:

  • 事件(event)可以封装和传递监听器中要处理的参数,如对象或字符串,并作为监听器中监听的目标。
  • 监听器(listener)具体根据事件发生的业务处理模块,这里可以接收处理事件中封装的对象或字符串。
  • 事件发布者(publisher)事件发生的触发者。

2、事件的定义

我们先定义一个时间,继承org.springframework.context.ApplicationEventApplicationEvent

import org.springframework.context.ApplicationEvent;

public class EventLearn extends ApplicationEvent {
   
    private String address;
    private String text;
    
	//source 发生事件的对象
    public EventLearn(Object source, String address, String text) {
   
        super(source);
        this.address = address;
        this.text = text;
    }

    public String getAddress() {
   
        return address;
    }

    public String getText() {
   
        return text;
    }
}

3、非注解监听器:

继承import org.springframework.context.ApplicationListener
参数使用我们自定义的事件EventLearn即可

此处是instanceof用于判断类型,即传入的参数eventLearn是否是EventLearn类型

import org.springframework.context.ApplicationListener;
import org.springframework.stereotype.Component;

@Component
public class ApplicationListenerLearn implements ApplicationListener<EventLearn
Spring Boot监听器是用于监听应用程序特定事件的组件,当这些事件发生时,监听器会执行相应的逻辑。 下面是一个简单的使用Spring Boot监听器的示例: 1. 创建一个自定义的监听器类,实现Spring的ApplicationListener接口。例如: ```java public class MyApplicationListener implements ApplicationListener<ApplicationReadyEvent> { @Override public void onApplicationEvent(ApplicationReadyEvent event) { // 处理应用程序启动完成事件 System.out.println("应用程序已启动!"); } } ``` 2. 在Spring Boot应用程序的入口类,通过注解@EnableAutoConfiguration或@SpringBootApplication启用自动配置,并通过@ComponentScan扫描自定义监听器类。例如: ```java @EnableAutoConfiguration @ComponentScan public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } ``` 3. 运行应用程序时,自定义监听器的onApplicationEvent方法将会在应用程序启动完成时被调用。例如,当应用程序启动完成时,控制台将会打印出"应用程序已启动!"。 此外,Spring Boot还提供了其他类型的监听器,用于监听不同类型的事件,如应用程序启动前事件、应用程序关闭事件等。你可以根据需要实现不同的监听器,并注册到Spring Boot应用程序。 总结:Spring Boot监听器用于监听特定事件,并在事件发生时执行相应的逻辑。通过自定义监听器类和在入口类注册监听器,我们可以方便地使用监听器来处理应用程序的各种事件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值