我正在使用long構造java.sql.Timestamp。有時候它會在其他時候出現錯誤!例如將時間戳長轉換爲時間戳錯誤
76875給出的時間戳 「1970-01-01 01:01:16.875」
凡來了額外的時間的呢?問題出現,然後消失的自行捐贈:
「1970-01-01 00:01:16.875」。
的代碼導致在谷歌AppEngine上運行的問題位,可以把它搞亂的東西了時區?我試圖找出一個模式,但尚未管理。
我正在使用long構造java.sql.Timestamp。有時候它會在其他時候出現錯誤!例如將時間戳長轉換爲時間戳錯誤
76875給出的時間戳 「1970-01-01 01:01:16.875」
凡來了額外的時間的呢?問題出現,然後消失的自行捐贈:
「1970-01-01 00:01:16.875」。
的代碼導致在谷歌AppEngine上運行的問題位,可以把它搞亂的東西了時區?我試圖找出一個模式,但尚未管理。
數據庫是否與您的應用程序在同一臺服務器上運行?時區差異似乎最有可能。
這裏有幾個變量。嘗試確定問題出在哪裏是來自:
您可能需要爲這些不同的日期對象創建一個表。嘗試不同的長整型值,併爲每個值創建一行java.util.Date,java.sql.Date,java.sql.Timestamp。
刷新內存Timestamp
構造函數:自1970年1月1日00:00:00 GMT以來的時間 - 毫秒。請注意,這是GMT。
所以沒有錯 「1970-01-01 01:01:16.875」,我想你在歐洲時區(+1)現在:)
嘗試new java.sql.Timestamp(76875).toGMTString()
的時候,你將獲得「1月1日1970 00:01:16 GMT「。
您也可以先致電TimeZone.setDefault(TimeZone.getTimeZone("GMT+0:00"));
,然後您的時間戳將爲「1970-01-01 00:01:16.875」。