在Tomcat中部署WAR时打印自定义消息

时间:2016-12-14 16:49:34

标签: tomcat deployment tomcat7 war

有没有办法在WAR文件中放置一些内容(可能在META-INF中),当Tomcat 7部署该文件时,该文件会打印自定义问候语或消息?

例如,没有它,警报就不那么引人注目了:

INFO: Deployment of web application directory myTCdir/myapp has finished in 137 ms

除此之外,我想展示如下内容:

*******************************************
* Welcome to My App
*******************************************

1 个答案:

答案 0 :(得分:1)

一种方法是使用上下文侦听器。每次应用启动时都会运行contextInitialized()方法。

package ....
import ...

@WebListener
public class MyContextListener implements ServletContextListener {

    @Override
    public void contextInitialized(ServletContextEvent event) {
        System.out.println("*******************************************\n" +
                           "* Welcome to My App\n" +
                           "*******************************************");
    }
}

注意: 使用servlet注释,我不记得Tomcat 7是否支持它。如果没有,您必须将其添加到您的web.xml文件中。

如果您希望它真正脱颖而出,您可以使用控制台转义码添加颜色(至少使用NetBeans):

System.out.println("\u001B[41m This is red \u001B[30m");