beforeJFinalStop()方法如何使用?

        @Override
	public void beforeJFinalStop(){
		System.out.println("服务关闭了!");
	}
	
	@Override
	public void afterJFinalStart(){
		System.out.println("服务启动了!");
	}
在 JFinalConfig继承类中进行了覆盖 ,服务启动时,可以看到控制台输出信息。
但是关闭服务时,却未见控制台输出任何信息。
是测试方法不对,还是用法不对呢?

blob.png

评论区

JFinal

2017-03-13 10:34

截图中的红色关闭按钮是强制关闭 java 虚拟机,而 jetty、tomcat 的关闭并非指直接关闭虚拟机,而是向 jetty、tomcat 关送一个关闭信号,让其自己去关闭虚拟机

因此,beforeJFinalStop() 这个方法,会在 jetty、tomcat 正常关闭流程之下被回调,例如 tomcat 下回调它用一下 shutdown.sh、shutdown.bat 这两个可执行文件

而对于 eclipse 下面的开发情况之下,在修改了文件并保存后,jfinal 会 reload 一次 webapp,此时也会执行 beforeJFinalStop() 回调,在此方法中设置一个断点便知

nbjgl

2017-03-13 15:26

明白了~~多谢~

热门反馈

扫码入社