При использовании Hibernate 3.3.1 и Hibernate Annotations 3.4 база данных - DB2 / 400 V6R1, работающая в WebSphere 7.0.0.9
У меня есть следующий класс
@Entity
public class Ciinvhd implements Serializable {
@Id
private String ihinse;
@Id
@Column(name="IHINV#")
private BigDecimal ihinv;
....
}
По причинамЯ не могу понять, Hibernate игнорирует указанное имя столбца и использует «ihinv» для генерации SQL:
select
ciinvhd0_.ihinse as ihinse13_,
ciinvhd0_.ihinv as ihinv13_,
...
Что, конечно, дает мне следующую ошибку:
Column IHINV not in table CIINVHD
Редактировать: Я переключил уровень журнала режима гибернации на DEBUG и вижу, что он не обрабатывает аннотации столбцов для этого поля.Пробовал несколько случайных вещей, это просто не работает.
У кого-нибудь была эта проблема раньше?У меня есть другие сущности, которые очень похожи в том, как они используют # в именах полей своей базы данных, и которые являются частью PK, и у меня нет этой проблемы с ними.