формат времени ггггММддЧЧммсс в Hibernate 3.0 - PullRequest
0 голосов
/ 17 августа 2011

Мне нужно время в формате "ггггMMddHHmmss" для Hibernate 3.0.

 <property name="delayTime" column="DELAYTIME" type=""/>

что мне нужно указать тип, чтобы отразить время в вышеуказанном формате?

1 Ответ

0 голосов
/ 17 августа 2011

Звучит так, как вы хотите org.hibernate.usertype.UserType

Создайте класс, который реализует этот интерфейс:

  1. в методе nullSafeGet преобразовать объект даты из базы данных в строку, например, используя SimpleDateFormat

  2. в методе nullSafeSet сделать обратное. Преобразуйте вашу строку в объект даты перед сохранением в базе данных.


На самом деле приведенный выше ответ кажется излишним. Почему бы просто не сохранить дату как java.util.Date в спящем объекте. Тогда вы можете иметь такие методы, как:

private Date date;
public String getDate() {
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat(YOUR_FORMAT);
    return simpleDateFormat.format(date);
}
public void setDate() {
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat(YOUR_FORMAT);
    this.date = simpleDateFormat.parse(date);
}

Hibernate может использовать частную дату. Остальная часть вашего кода может использовать строку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...