如何在启动应用时执行Quarkus上的部分代码?
How to execute part of the code on Quarkus when starting the application?
请帮我理解启动应用程序时如何执行Quarkus上的部分代码?
如果可能,丢弃 link 或给出示例代码。
谢谢。
不确定是否理解您的问题,但如果您想在启动时执行代码,最简单的方法是观察(使用 @Observes
)带有 CDI bean 的 StartupEvent
:
@ApplicationScoped
public class AppLifecycleBean {
private static final Logger LOGGER = Logger.getLogger("ListenerBean");
void onStart(@Observes StartupEvent ev) {
LOGGER.info("The application is starting...");
}
void onStop(@Observes ShutdownEvent ev) {
LOGGER.info("The application is stopping...");
}
}
如果您需要更好地了解 Quarkus 应用程序生命周期,可以在我们的文档中找到更多详细信息:
https://quarkus.io/guides/lifecycle#listening-for-startup-and-shutdown-events
Quarkus 有一个@Startup 注释,它将在启动时实例化一个服务。它只是自动侦听 StartupEvent:
对于每个用 @Startup 注释的 bean,都会生成一个 StartupEvent 的合成观察者。使用默认优先级。
效果不错。
请帮我理解启动应用程序时如何执行Quarkus上的部分代码? 如果可能,丢弃 link 或给出示例代码。 谢谢。
不确定是否理解您的问题,但如果您想在启动时执行代码,最简单的方法是观察(使用 @Observes
)带有 CDI bean 的 StartupEvent
:
@ApplicationScoped
public class AppLifecycleBean {
private static final Logger LOGGER = Logger.getLogger("ListenerBean");
void onStart(@Observes StartupEvent ev) {
LOGGER.info("The application is starting...");
}
void onStop(@Observes ShutdownEvent ev) {
LOGGER.info("The application is stopping...");
}
}
如果您需要更好地了解 Quarkus 应用程序生命周期,可以在我们的文档中找到更多详细信息: https://quarkus.io/guides/lifecycle#listening-for-startup-and-shutdown-events
Quarkus 有一个@Startup 注释,它将在启动时实例化一个服务。它只是自动侦听 StartupEvent:
对于每个用 @Startup 注释的 bean,都会生成一个 StartupEvent 的合成观察者。使用默认优先级。
效果不错。