2016-09-21 58 views
1

我有此javascript值JSON值21/09/2016 13:24:40我想在我的Java後端接收該消息並將其轉換爲日期,然後轉換爲時間戳。java日期formarter不會將正常小時格式更改爲24小時格式

我創造了這個格式:

SimpleDateFormat hourFormat = new SimpleDateFormat("dd/mm/yyyy HH:mm:ss"); 

我使用的格式向String轉換成Date這樣的:

initHour = hourFormat.parse((String) datosDTOParseados.get("initHour")); 

Timestamp insertHour= new java.sql.Timestamp(initHour.getTime()); 

我打印值在控制檯和時間是正確的它是24小時格式。但是,當我將它插入Oracle數據庫時,小時以正常格式插入,而不是24小時格式。

我選擇Oracle中的日期是這樣的:

SELECT TO_CHAR(init_hour, 'dd/mm/yyyy HH:mm:ss') From mytable where id='2'; 

我使用這種格式改變HHhh,但同樣的事情發生嘗試:

SimpleDateFormat hourFormat = new SimpleDateFormat("dd/mm/yyyy hh:mm:ss"); 
+0

「正常格式」? –

回答

2

24小的Oracle格式HH24。另外分鐘應該是MI

所以,你的代碼應該類似於:

SELECT TO_CHAR(init_hour, 'dd/mm/yyyy hh24:mi:ss') From mytable where id='2'; 

諮詢Oracle Dates and Times

+0

Upvoted,但是插入的東西可能是沒有必要的,因爲它看起來好像他是通過JDBC使用'java.sql.Timestamp'插入的,所以'to_date'不是必需的。 –

+0

@MatthewMcPeak謝謝,我會更新我的答案。 –

相關問題