4 回答

TA貢獻1911條經驗 獲得超7個贊
JDBCTemplate 正在返回一個擴展 的實例。toString()
實現的 JavaDocs 解釋了使用的日期格式:java.sql.Date
java.util.Date
以日期轉義格式 yy-mm-dd 設置日期的格式。
java.util.Date
的 toString()
實現使用更長的日期時間格式:
將此 Date 對象轉換為以下格式的字符串:
dow mon dd hh:mm:ss zzz yyyy
日期字段的類型可以是,并且您仍然可以為該字段分配一個或任何子類。它是變量的運行時類,它通過動態方法調度確定行為,即調用哪個實現。Object
java.sql.Date
toString()
如果要將子類轉換為“普通”實例,可以查看此處。請注意,時間部分將始終從 SQL 中省略。如果需要該信息,則應改用。java.util.Date
DATE
TIMESTAMP

TA貢獻1836條經驗 獲得超5個贊
當我控制臺打印返回Object.getDate().toString()時,它返回“2017-08-04”,但是當我做新的Date().toString()時,它返回星期一 Mar 25 17:36:32 GMT 2019
這很簡單。
該代碼返回一個類型的對象,而在第二種情況下,類很可能是 。returnedObject.getDate()
java.sql.Date
Date
java.util.Date
根據 的 java 文檔,它的方法返回一個格式的字符串。java.sql.Date
toString
yyyy-mm-dd
根據 的 java 文檔,它的方法以格式返回一個 String。java.util.Date
toString
dow mon dd hh:mm:ss zzz yyyy

TA貢獻1805條經驗 獲得超9個贊
盡管 Date 類旨在反映協調世界時 (UTC),但根據日期類的 Java 文檔,它可能無法完全反映協調世界時 (UTC),具體取決于 Java 虛擬機的主機環境。我認為這意味著它正在查看系統的日期格式,而SQL查詢則帶有UTC格式。沒有更改格式的日期參數。您需要像通過日期格式化程序所說的那樣應用它。查看 DateFormater 類:https://docs.oracle.com/javase/7/docs/api/java/text/DateFormat.html 特別是格式方法。

TA貢獻1780條經驗 獲得超5個贊
java.sql.Date
延伸。您可以使用getTime()和setTime(long time)以ms為單位獲取兩種日期,這些日期都可以用于創建相同的類型,因此您可以以您喜歡的任何格式獲取字符串。java.util.Date
但是,請注意,Java 的舊日期類是垃圾(不是線程安全的,不是不可變的,并且命名不當(它們是時間戳而不是日期)。
有更高級的第三方庫。看看java.util.time,這是做到這一點的新方法。
添加回答
舉報