Использование ZonedDateTime с полями Grails 3 lastUpdated и dateCreated - PullRequest
0 голосов
/ 28 ноября 2018

Предоставляет ли Grails 3 поддержку использования любого класса, кроме Date, например ZonedDateTime, для полей dateCreated и lastUpdated?Например,

...
ZonedDateTime dateCreated
ZonedDateTime lastUpdated
...

Я знаю, что MySQL поддерживает ZonedDateTime, поэтому мне особенно любопытно, поддерживает ли GORM его.

Ответы [ 2 ]

0 голосов
/ 29 ноября 2018

Да, это так.Поскольку Grails 3 по-прежнему поддерживает вплоть до Java 7, вам нужно добавить несколько зависимостей в ваш build.gradle, чтобы добавить поддержку для него:

// Hibernate java 8 java.time support 
compile "org.hibernate:hibernate-java8:$hibernateVersion" 
// Grails java 8 java.time support
compile "org.grails.plugins:grails-java8:1.2.3"

Есть много хороших советов при использовании java.time с Grails здесь: https://giri -tech.blogspot.com / 2018/01 / add-time-zone-sense.html

0 голосов
/ 28 ноября 2018

Собственно, нет.Тем не менее, было бы довольно просто использовать их самостоятельно, если вы предпочитаете.Сначала вы захотите отключить автоматическую отметку времени на вашем доменном объекте:

static mapping = {
    autoTimestamp false
}

Затем используйте события (beforeUpdate, beforeInsert) для заполнения как:

def beforeUpdate() {
    lastUpdated = // whatever you want it to be
} 
...