有什么办法可以在J2EE服务器启动时执行某些操作?我正在使用Tomcat [英] Is there a way to do something on a J2EE server-start? I'm using Tomcat
问题描述
我正在尝试让J2EE服务器主动向另一个服务器注册(读取:向其中发送一些消息),而不是作为对某些事情的响应.令人惊讶的是,我发现关于是否存在要扩展的事件和/或类的信息或问题很少,这些问题或问题将使我对服务器启动"有所了解.我总是可以编写一个脚本,该脚本首先部署到服务器,然后通过请求进行提示,但我确实希望有一个更干净的解决方案.
I'm trying to get a J2EE server to register (read: send some message to) with another server on its own initiative - not as a response to something. Surprisingly, I've found very little information or questions on whether there are events and/or classes to extend that will give me a handle on "server-start". I could always write a script that first deploys to server, then prompts it with a request, but I'd really rather have a cleaner solution..
谢谢.
推荐答案
实现 contextInitialized()
方法完成该工作.
Implement ServletContextListener
and do the job in contextInitialized()
method.
public class Config implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent event) {
// Do stuff during server startup.
}
@Override
public void contextDestroyed(ServletContextEvent event) {
// Do stuff during server shutdown.
}
}
使用Tomcat 7时,请按照以下说明进行注册,以使其运行
When you're using Tomcat 7, register it as follows to get it to run
@WebListener
public class Config implements ServletContextListener {
或者在使用Tomcat 6或更早版本时,请在web.xml
中注册它
Or when using Tomcat 6 or older, register it in web.xml
instead
<listener>
<listener-class>com.example.Config</listener-class>
</listener>
这篇关于有什么办法可以在J2EE服务器启动时执行某些操作?我正在使用Tomcat的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!