监听 ApplicationReadyEvent 事件
-
原理 :
ApplicationReadyEvent
是 Spring Boot 提供的一个事件,表示应用已经准备就绪,所有的 Bean 都已经被加载和初始化完成。可以通过监听这个事件来执行相应的代码。 -
示例代码 :
-
创建一个普通的 Java 类,使用
@Component
注解将其标记为 Spring 容器中的一个 Bean。 -
在该类中添加一个方法,使用
@EventListener
注解来监听ApplicationReadyEvent
事件。 -
在监听方法中添加需要执行的代码逻辑。
import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.ApplicationListener; import org.springframework.context.event.ContextRefreshedEvent; import org.springframework.stereotype.Component; import org.springframework.boot.context.event.ApplicationReadyEvent; import org.springframework.context.ApplicationListener; import org.springframework.stereotype.Component; @Component public class ApplicationReadyEventListener implements ApplicationListener<ApplicationReadyEvent> { @Override public void onApplicationEvent(ApplicationReadyEvent event) { System.out.println("ApplicationReadyEvent 监听到应用已准备就绪"); // 在这里执行加载完所有 Bean 后需要执行的代码 } }
-