在Java servlet中如何动态获取上次更新时间?

时间:2018-03-12 17:53:38

标签: java servlets timestamp

在我的Java servlet中,我想动态获取文件/应用程序的最后更新时间,因此每次我对应用程序进行更改时,我都不必手动更新此信息,因此我使用了以下行获取信息:

String executionDir=myClass.getClass().getProtectionDomain().getCodeSource().getLocation().toString();

然后得到上面" executionDir"的时间戳,它在我的本地机器上工作正常,它显示了这个:最后更新:[2018-03-12 13:29]

我从我的Netbeans进行了测试,在一个案例中,我下载并安装在我的C:驱动器上的Tomcat 7然后将Netbeans指向它。第二种情况是Tomcat 8.5,它带有Netbeans 8.2。

但是,当应用程序部署到2个不同的tomcat服务器时,信息丢失,并显示:最近更新:[]

您可以在此处看到该应用:http://gatecybertech.net

为什么?如何从服务器正确获取时间戳?

1 个答案:

答案 0 :(得分:0)

我在以下网站找到了与我的问题相关的一些信息,答案在底部:http://www.nakov.com/blog/2008/06/11/finding-the-directory-where-your-java-class-file-is-loaded-from/

最后我用这一行来获取时间戳:

this.getClass().getProtectionDomain().getCodeSource().getLocation().getFile()