Звучит так, как вы хотите org.hibernate.usertype.UserType
Создайте класс, который реализует этот интерфейс:
в методе nullSafeGet преобразовать объект даты из базы данных в строку, например, используя SimpleDateFormat
в методе 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 может использовать частную дату. Остальная часть вашего кода может использовать строку.