spring的监听事件
时间: 2023-07-25 17:14:03 浏览: 43
Spring 提供了多种类型的事件监听器,可以在特定事件发生时执行自定义的业务逻辑。以下是 Spring 中常见的监听事件类型:
1. ContextRefreshedEvent:当 ApplicationContext 被初始化或刷新时,该事件被发布。这也可以在 ConfigurableApplicationContext 接口中使用 refresh() 方法来发生。
2. ContextStartedEvent:当使用 ConfigurableApplicationContext 接口中的 start() 方法启动 ApplicationContext 时,发布此事件。
3. ContextStoppedEvent:当使用 ConfigurableApplicationContext 接口中的 stop() 方法停止 ApplicationContext 时,发布此事件。
4. ContextClosedEvent:当使用 ConfigurableApplicationContext 接口中的 close() 方法关闭 ApplicationContext 时,发布此事件。
5. RequestHandledEvent:在 Web 应用程序中,当一个 HTTP 请求被处理完后,发布此事件。
你可以通过实现 ApplicationListener 接口或使用 @EventListener 注解来监听这些事件。例如:
```java
@Component
public class MyEventListener {
@EventListener
public void handleContextRefresh(ContextRefreshedEvent event) {
// 在 ApplicationContext 被初始化或刷新时执行的逻辑
}
@EventListener
public void handleRequestHandled(RequestHandledEvent event) {
// 在 HTTP 请求被处理完后执行的逻辑
}
}
```