我們爲我們的ERP使用Struts1.2和Hibernate。假設有一個Java類,它具有一個名爲deploymentDate
的屬性,我必須在其中存儲WAR文件已部署的日期,我們應該怎麼做?我們正在使用Glassfish 2.1服務器。如何將WAR文件的部署日期轉換爲Java代碼?
0
A
回答
1
ServletContextListener
你的意思是「部署」到底是什麼意思?
如果您的意思是在servlet容器在運行時爲您的Web應用程序創建上下文,那麼在第一個請求被您的servlet處理之前,請使用標準掛鉤來調用您的代碼時刻。
創建一個實現ServletContextListener
的類,使用所需的方法contextInitialized
。在部署期間用@WebListener
標註此信號。搜索堆棧溢出許多現有的問題&關於這個主題的答案,包括一些更長的答案由我。
在該方法中,捕獲當前時刻爲Instant
,即時間軸上UTC的時間,分辨率爲納秒。
Instant instant = Instant.now() ;
示例代碼。
@WebListener
public class MyServletContextListener implements ServletContextListener {
public void contextInitialized(ServletContextEvent sce) {
Instant instant = Instant.now() ; // Capture current moment in UTC.
// By default `toString` generates string in standard ISO 8601 format.
// Easy to parse: Instant.parse("2017-01-23T01:23:45.123456789Z");
String instantIso8601 = instant.toString() ;
// Remember the launch time as an attribute on the context.
sce.getServletContext().setAttribute("launch_instant" , instantIso8601) ;
// Or save your moment in some class variable mentioned in Question.
someObjectOfSomeClass.setLaunchInstant(instant);
}
public void contextDestroyed(ServletContextEvent sce) {
…
}
}
0
您可以在應用程序的初始化階段使用WAR文件的last modification time初始化該變量。
或者,使用諸如Maven之類的工具,然後將部署日期設置爲項目屬性是比上述方法更好的方法,因爲WAR文件的路徑可能會更改。
相關問題
- 1. 將Web Apps部署爲war文件
- 2. 將MySQL日期轉換爲Java日期
- 3. 如何將curl代碼轉換爲java
- 4. 如何將Java代碼轉換爲mapreduce?
- 5. 如何將Curl代碼轉換爲Java
- 6. 如何將文本轉換爲日期?
- 7. 如何將日期轉換爲文本
- 8. 如何將日期日期轉換爲英文日期格式?
- 9. 如何將Json日期轉換爲Java日期
- 10. 如何將格式化日期轉換爲日期對象Java
- 11. 將Java代碼文檔轉換爲C#
- 12. 將Java代碼轉換爲C#代碼
- 13. 如何將JRuby Resque進程部署爲war文件?
- 14. 如何在apache tomcat 8中將uaa部署爲war文件?
- 15. 如何將.war文件轉換爲JAR文件?
- 16. 將django部署爲war - Jython
- 17. 如何將日期日期轉換爲java中的西式日期?
- 18. 如何將內聯CSS代碼轉換爲外部文件CSS代碼?
- 19. 將輸入從文件轉換爲java中的日期
- 20. 將多個war文件部署到jetty8
- 21. 的Java的.war部署
- 22. jetty部署war文件
- 23. 部署WAR文件到GlassFish
- 24. 如何將web.xml代碼轉換爲Java配置的Java配置文件
- 25. 如何將給定日期轉換爲java,年,月,日
- 26. 將美國日期(文本)轉換爲歐洲日期(日期)的Excel轉換
- 27. 將LocalTime(Java 8)轉換爲日期
- 28. Java:將字符串轉換爲日期
- 29. 如何將Java源代碼轉換爲字節代碼?
- 30. 我應該如何將Java代碼轉換爲C#代碼?