如何在上下文加载时自动运行java Web应用程序中的servlet /动作(tomcat启动)

时间:2012-11-19 12:07:46

标签: java jsp servlets struts2

我想在我的网络应用程序部署时执行一些代码。

如果我重新启动tomcat,也会发生同样的情况。

这应该只在整个Web应用程序的生命周期中完成一次。

我是否可以在web.xml中设置某些内容,例如启动条目,每次部署我的Web应用程序或重新启动tomcat时都会执行该操作?

请帮忙。

1 个答案:

答案 0 :(得分:7)

您需要实施ServletContextListner界面。

ServletContextListner位于javax.servlet包内。

以下是有关如何操作的简短代码。

public class MyServletContextListener implements ServletContextListener {

    @Override
    public void contextDestroyed(ServletContextEvent arg0) {
    //Notification that the servlet context is about to be shut down.   
    }

    @Override
    public void contextInitialized(ServletContextEvent arg0) {
    // do all the tasks that you need to perform just after the server starts

    //Notification that the web application initialization process is starting
    }

}

并在部署描述符web.xml中配置它

<listener>
    <listener-class>
        mypackage.MyServletContextListener
    </listener-class>
</listener>