首先,我是JAX-RS的新手。我正在尝试创建一个后端,并且已经进行了pom.xml实现。更具体地说,我有此类
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
@ApplicationPath("webapi")
public class MyApp extends Application {
}
,我想知道如何控制它的启动时间,并最终阻止它启动。
类似这样的东西:
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
@ApplicationPath("webapi")
public class MyApp extends Application {
@Override
public void onStartup() {
if (!Utils.isConfDataValid())
exit(1);
}
}
我现在对任何应用程序事件或JAX-RS中的类似事件有了想法。
谢谢!
答案 0 :(得分:0)
请注意,某些类型的事件或挂钩取决于Web应用程序服务器。
在这种情况下,from django.db.models import IntegerField
from django.db.models.functions import Cast
ax_char = (
Numbers_char_model.objects
.annotate(number_int=Cast('number', IntegerField()))
.filter(number_int__lte=20)
)
与您要寻找的内容无关。
请注意,我不建议使用JAX-RS
或终止类似的应用程序。
由于System.exit
位于JAX-RS
堆栈中,因此您可以注册一个Servlet
实现以在上下文启动时执行代码。
ServletContextListener
如果您在public class CustomServletContextListener implements ServletContextListener {
@Override
public void contextInitialized(final ServletContextEvent servletContextEvent) {
// Context startup
}
@Override
public void contextDestroyed(final ServletContextEvent servletContextEvent) {
// Context shutdown
}
}
环境中,可以通过用@WebListener
注释此侦听器来注册
Servlet 3+
否则,您需要将老式@WebListener
public class CustomServletContextListener implements ServletContextListener {
文件用作web.xml
。