Hibernate没有限定名为' end'

时间:2015-09-03 07:24:16

标签: java hibernate

我们正在尝试将我们的应用程序从Hibernate 3.2.6升级到Hibernate 3.5.6。

我们有一些类名为' start'并且'结束'。例如:

@Column(name='start')
public Date getStart() {
 return this.start;
}

@Column(name='end')
public Date getEnd() {
 return this.end;
}

当Hibernate生成一个SQL来加载一个对象时,它永远不会限定' end'属性在具有相同命名属性的表之间连接时产生错误。例如,Hibernate产生这样的东西:

select user.start, end from user ...

此时,我们需要一个解决方案,而不需要更改属性的名称。

非常感谢。

1 个答案:

答案 0 :(得分:0)

根据底层DBMS,您可以转义列的名称,即@Column(name="\"end\"")

我不知道为什么Hibernate的行为会在版本之间发生变化。