Как я могу загрузить класс на запуске в Tomcat? Я видел load-on-startup
тег для web.xml
файл, но я могу использовать его и как я должен записать свой класс?
Править: Как может я реализовывать этот класс и xml?
<servlet-name>??</servlet-name>
<servlet-class>??</servlet-class>
<load-on-startup>10</load-on-startup>
Они предназначены для указания порядка загрузки сервлетов. Тем не менее, сервлеты больше предназначены для управления, препроцессирования и / или постпроцессирования HTTP-запросов / ответов, в то время как вы, похоже, больше ищете хук при запуске веб-приложения. В этом случае вам нужен ServletContextListener
.
@WebListener
public class Config implements ServletContextListener {
public void contextInitialized(ServletContextEvent event) {
// Do your thing during webapp's startup.
}
public void contextDestroyed(ServletContextEvent event) {
// Do your thing during webapp's shutdown.
}
}
Если вы еще не используете Servlet 3.0 (и, следовательно, не можете использовать @WebListener
), то вам нужно вручную зарегистрировать его в web.xml
следующим образом:
<listener>
<listener-class>com.example.Config</listener-class>
</listener>