какой тип данных для использования времени в Горм? - PullRequest
2 голосов
/ 03 декабря 2010

как я могу обработать время (например, 14:33) во время расчетов и экономии в базе данных? Какой тип данных я могу использовать для этого в БД HSQL?

Я хочу рассчитать такие вещи, как нагрузка или время отдыха. Есть ли встроенная возможность конвертировать время в десятичное число?

Спасибо!

1 Ответ

5 голосов
/ 03 декабря 2010

Что касается представления time , наиболее удобный тип должен быть Joda Time's LocalTime.
Для преобразования в базу данных *1007* доступно несколько конвертеров .

.

Вам нужны пакеты JAR joda-time и joda-time-hibernate.

Тогда ваш класс домена может выглядеть так:

import org.joda.time.contrib.hibernate.PersistentLocalTimeAsTime
import org.joda.time.LocalTime

class TimeDomain {
    LocalTime localTime

    static mapping = {
        localTime type: PersistentLocalTimeAsTime
    }

    // business logic would belong to a service class
    LocalTime plusMinutes(int minutes) {
        localTime.plusMinutes(minutes)
    }
}
...