Функция запуска при запуске Tomcat - PullRequest
0 голосов
/ 17 декабря 2018

В Eclipse (Java), когда я нажимаю Run Tomcat8, я хочу зарегистрировать время, чтобы сообщить, когда сервер начал работать.Я не знаю, как вызвать это действие регистрации, так как мне нужно получить доступ к странице для вызова функции журнала в файле контроллера.В любом случае, я могу записать файл журнала при запуске Tomcat8?

1 Ответ

0 голосов
/ 17 декабря 2018

Если вы хотите сделать это без какой-либо специфичности для Spring или Tomcat и иметь решение, работающее на всех видах приложений Java EE, вы можете создать класс, реализующий javax.servlet.ServletContextListener, и получить уведомление о том, что веб-приложение готово обработать запрос вметод contextInitialized(ServletContextEvent sce).

Этот метод будет вызываться при развертывании приложения на сервере.

package com.your.package;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

public class YourServletContextListener implements ServletContextListener {

    public void contextInitialized(ServletContextEvent event) {
        // Place here the code to run once the application is ready 
    }

    public void contextDestroyed(ServletContextEvent event) {
        // Place here the code to run just before the application goes down
    }

}

Этот слушатель должен быть настроен в вашем файле web.xml следующим образом

</web-app ...>
  <listener>
    <listener-class>com.your.package.YourServletContextListener</listener-class>
  </listener>
</web-app>
...