2013-06-29 20 views
4

我有一個名爲Event的Grails域類。它有一個startTime和一個endTime。這兩個字段將被表示爲什麼對象?我需要他們堅持數據庫,所以記住這一點。我不需要對特定日期做任何事情,只需要一天的特定時間,我可能需要做一些時間計算(確保endTime在startTime之後等)使用時間作爲Grails域類字段

因此...使用java.sql.Timegroovy.time包,Integers或其他東西會更容易些嗎?謝謝!

回答

2

我喜歡用它JODA time plugin。 雖然標準的日期對象工作正常,如果你不必做太多的計算方式。

1

如果數據庫允許使用datetime作爲這兩列的數據類型,那麼我更喜歡Groovy Date,儘管使用Joda Time插件可以獲得靈活性。

日期將是the epoch和groovy日期提供了一個簡單的機制來解析String中的日期/時間。例如,如果startTimeendTime被表示爲像13:45:32(視圖中或從一個REST呼叫)表示1:45 PM時間則該字符串可以容易地解析以日期爲一個字符串:

Date.parse('HH:mm:ss', '13:45:32') 
//Thu Jan 01 13:45:32 EST 1970 

相反,獲取的日期之後從持久層,你可以比較喜歡:

endTime.after(startTime)

這將因爲日期時間(HH:mm:ss)最終比較永遠是時代[1970年1月1日]在所有情況下。

相關問題