启动时触发函数 运行 Tomcat
Trigger function when start running Tomcat
在 Eclipse(Java) 上,当我点击 运行 Tomcat8 时,我想记录时间以告知服务器何时启动到 运行。我不知道如何触发此日志记录操作,因为我必须访问一个页面才能调用控制器文件中的日志功能。无论如何,我可以在每次启动 运行ning Tomcat8 时写一个日志文件吗?
如果您想在没有任何 Spring 或 Tomcat 特异性的情况下执行此操作,并且有一个可在所有类型的 Java EE 应用程序上运行的解决方案,您可以创建一个 class实施 javax.servlet.ServletContextListener
并获得 Web 应用程序已准备好在方法 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>
在 Eclipse(Java) 上,当我点击 运行 Tomcat8 时,我想记录时间以告知服务器何时启动到 运行。我不知道如何触发此日志记录操作,因为我必须访问一个页面才能调用控制器文件中的日志功能。无论如何,我可以在每次启动 运行ning Tomcat8 时写一个日志文件吗?
如果您想在没有任何 Spring 或 Tomcat 特异性的情况下执行此操作,并且有一个可在所有类型的 Java EE 应用程序上运行的解决方案,您可以创建一个 class实施 javax.servlet.ServletContextListener
并获得 Web 应用程序已准备好在方法 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>