ApplicationListener代码实例
时间: 2024-10-20 18:01:18 浏览: 17
基于java的Message-Driven Bean EJB实例源代码.zip
在Spring框架中,`ApplicationListener`是一个基础接口,它让你的bean能够在特定的应用程序事件发生时执行相应的业务逻辑。下面是一个简单的`ApplicationListener`代码实例,用于监听`ApplicationEvent`的一种常见情况:
```java
import org.springframework.context.ApplicationEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.stereotype.Component;
@Component
public class MyEventListener implements ApplicationListener<ApplicationEvent> {
@Override
public void onApplicationEvent(ApplicationEvent event) {
System.out.println("接收到应用事件: " + event);
// 这里可以根据event的类型做进一步的处理
if (event instanceof ApplicationStartedEvent) {
System.out.println("应用程序已启动");
} else if (event instanceof ApplicationStoppedEvent) {
System.out.println("应用程序正在停止");
}
}
}
```
在这个例子中,`MyEventListener`类实现了`ApplicationListener<ApplicationEvent>`,这意味着它可以监听所有类型的应用事件。`onApplicationEvent()`方法会在对应事件触发时被调用,你可以在这里添加具体的处理逻辑。
要启用此监听器,只需将其添加到Spring配置文件中,并确保该组件能够被Spring扫描到。例如,如果你使用的是XML配置:
```xml
<bean id="myEventListener" class="com.example.MyEventListener"/>
```
如果是基于注解的配置,则不需要显式指定:
```java
@SpringBootApplication
public class App {
// ...
}
```
Spring会自动发现并注册实现了`ApplicationListener`接口的bean。
阅读全文