Отсутствует столбец с подчеркиванием при попытке использовать Hibernate для сопоставления поля даты

У меня есть класс JPA TableXXX, который содержит следующее поле:

@Column(name = "CreatedOn")
@NotNull
private Date createdOn;

Когда я компилирую и разворачиваю свое приложение, оно выдает ошибку:

Caused by: org.hibernate.HibernateException: Missing column: created_on in TABLEXXX

Я использую Hibernate 3.5.5 и Oracle 10g. столбец CreatedOn хранится в базе данных как метка времени. Почему Hibernate добавляет подчеркивание между "создан" и "вкл"?

1 ответ

Решение

Дважды проверьте, что вы не используете собственную стратегию именования, отличную от стратегии по умолчанию для EJB3. Пользовательская стратегия именования будет объявлена ​​с использованием hibernate.ejb.naming_strategy собственность (может быть в persistence.xml или программно, в зависимости от того, как вы используете JPA).

Рекомендации

Другие вопросы по тегам