2011-05-17 66 views
1

我遇到了一個問題。在我的表單中,我使用了jQuery datetime選擇器。這會生成一個字符串,如05/23/2011 07:33Playframework在數據庫中插入錯誤的日期

在我的Java代碼,我使用的日期格式創建日期對象的是字符串:

System.out.println(execute); 
    DateFormat df = new SimpleDateFormat("dd/MM/yyyy kk:mm"); 
    Date date = null; 
    try { 
     date = df.parse(execute); 
    } catch (ParseException e) { 
     e.printStackTrace(); 
    } 

execute是包含日期的字符串)。 在控制檯中,println()顯示正確的日期。當我將一個Model的實例寫入數據庫時​​,我正在使用該日期對象。但是,一旦我調用save()函數(來自模型),插入到數據庫中的時間戳就完全錯誤了。

在這種情況下它是:2012-11-05 07:33:00時間是正確的,但日期有時會超過一年!

任何想法是什麼造成這種情況?

回答

2

你確定你的日期格式爲「dd/MM/yyyy kk:mm」嗎?
你得到日/月/年,但在「05/23/2011 07:33」這是月/日/年,不是嗎?

+1

@Sled:試試「MM/DD/YYYY KK:MM」 – 2011-05-17 12:55:29

+0

我有月份和日期顛倒,謝謝你們,我toally看在它.. – networkprofile 2011-05-17 14:01:17

1

我也有類似的問題,因爲jQuery的日期時間選擇器是使用不同格式的日期比我的Java代碼,並改變要保存的日期。檢查它:)

+1

的日期格式不規範相同JS和Java的方式。如你,這讓我瘋了,我調整了Jquery的的DateTimePicker的CrudSiena :) – mandubian 2011-05-17 12:59:41

+0

結束@mandubian是的,這是一個痛苦,我失去了對:) – 2011-05-17 13:13:02

+0

我仍然不知道爲什麼太多的時間???就好像寫作服務器和webapps的人不在同一時間和日期一樣;) – mandubian 2011-05-17 13:19:06