2013-03-15 83 views
0

我要計算2個SQL日期之間的天量,目前我使用:獲取使用jodatime 2個SQL日期之間的天量:錯誤的日期轉換(1天)

Days.daysBetween(new DateMidnight(date1), new DateMidnight(date2)); 

然而,當通過sql日期1900-01-01它變成:1899-12-31

我知道這與時區有關,但是如何防止發生這種情況?

我也試過這樣使用:時點

+1

你需要一個*很多*有關數據正是清晰。如果可能的話,你也應該避免使用'DateMidnight'。 – 2013-03-15 10:05:35

+0

對不起,忘了添加代碼突出顯示。我剛剛添加了joda時間(僅在此使用),因爲它似乎是計算天數的最簡單方法。 – 2013-03-15 10:07:18

+0

這沒有幫助 - 我們仍然不完全知道** date1和date2中的內容。 – 2013-03-15 10:10:23

回答

1

與時區組合使用DateMidnight是你應該避免的。有些日子甚至沒有在半夜...

嘗試使用LocalDate.toDateTimeAtStartOfDay代替DateMidnight