tomcat - 有没有办法在 J2EE 服务器启动时做一些事情?我正在使用汤姆猫

标签 tomcat servlets event-handling startup

<分区>

我试图让一个 J2EE 服务器主动向另一个服务器注册(阅读:向其发送一些消息)——而不是作为对某事的响应。令人惊讶的是,关于是否有事件和/或要扩展的类可以让我处理“服务器启动”,我发现的信息或问题很少。我总是可以编写一个首先部署到服务器的脚本,然后用请求提示它,但我真的更希望有一个更简洁的解决方案..

谢谢。

最佳答案

实现ServletContextListener并在 contextInitialized() 方法中完成这项工作。

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时,按如下方式注册让它运行

@WebListener
public class Config implements ServletContextListener {

或者当使用 Tomcat 6 或更早版本时,改为在 web.xml 中注册

<listener>
    <listener-class>com.example.Config</listener-class>
</listener>

关于tomcat - 有没有办法在 J2EE 服务器启动时做一些事情?我正在使用汤姆猫,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5951294/

相关文章:

java - 如何使用gradle指定对tomcat库的依赖

java - 将零件转换为文件并读取 Excel 文件

event-handling - 不同钛对象的相同事件监听器

javascript - 为什么不相关的元素会触发此点击事件?

Hibernate内存数据+数据库

eclipse - 无法通过 Eclipse 运行 Tomcat

java - WAR 文件的烦人的 Tomcat 问题

java - 带有 HTML 文件的 URLConnection.getContent

java - 无法从请求 header 检索查询参数

java - Java 中的事件调度程序