【创建时间】2016/8/31
contextDestroyed为定时器销毁方法,
contextDestroyed为定时器销毁方法,
public void contextDestroyed(ServletContextEvent sce) {
timer.cancel();
System.out.println("定时器销毁!");
}
在执行的时候,并没有看到程序有调用该方法,好奇这个销毁到底是怎么执行的,我在方法里面加了System.out,但是并没有看到控制台有打印出销毁信息;查资料得知,当tomcat服务器关闭时,contextDestroyed()方法就会调用,但是我关闭tomcat还是没显示信息;再看资料,最后发现通过eclipse关闭tomcat的时候,如果在console界面关闭,实际上是Terminate,而在Servers界面关闭是Stop,Stop可以正常在控制台打印出销毁信息,我推测Terminate可能是直接关闭tomcat进程,所以还没有调用contextDestroyed()方法就结束了,所以看不到销毁信息。