簡體   English   中英

如何在grails域中捕獲毫秒

[英]How to capture milliseconds in grails domain

我有一個grails域,用於在MySQL中存儲數據。

在其中我有一個Date屬性,它在DB中創建一個DateTime字段。 但是,除了日期之外,我還希望捕獲毫秒數。

有沒有辦法捕獲毫秒?

例:

Class MyClass {

  Date dateCreated

}

在MySQL中存儲數據為2014-10-06 16:21:57但我也想捕獲幾毫秒。

通過定義對象的小數點數,MySQL 5.6.4及更高版本可以在數據庫中為datetime對象節省毫秒數。 (在這里閱讀更多: MySQL參考手冊 )。 默認情況下,Grails / Gorm不會這樣做。 幸運的是,通過在域中定義sqlType可以很容易地解決這個問題,如下所示:

class ExampleDomain {
    Date date

    static mapping = {
        date sqlType: 'datetime(3)'
    }
}

你可以使用bigint(20)。 如果要在保存實例時自動存儲unix epoch,那么你的groovy / grails域可能看起來像那樣:

class myClass {

  Integer id
  Long timestamp = System.nanoTime()

  static mapping = {
    timestamp sqlType: "bigint"
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM