我有以下三个简化类,它们代表我需要在我正在使用的旧数据库中映射的关系。
class One
{
@Id
String id
}
class Two
{
@Id
@ManyToOne
@JoinColumn(name = 'ONE', referencedColumn = 'ID')
One one
}
class Three
{
@Id
@ManyToOne
@JoinColumn(name = 'TWO', referencedColumn = 'ONE')
Two two
}
一级和二级之间的关系很好,但是,二级和三级之间的关系不起作用。 Hibernate返回“无法找到具有逻辑名称的列:org.hibernate.mapping.Table(TWO)中的ONE及其相关的supertables和secondary tables”错误。我调试了hibernate代码到抛出此错误的位置,定义TWO表的org.hibernate.mapping.Table对象不包含任何列详细信息。它没有把Two Class中的Many To One连接作为一列来处理。