Hibernate @ManyToOne注释创建表来存储关系

时间:2012-03-28 10:37:58

标签: hibernate

我有两个实体//所有细节都已删除

@Entity
@Table(name = "A_TABLE_NAME")
public class AEntity extends ... {

...
@ManyToOne(fetch = FetchType.LAZY)
  private BEntity b;
...
}

@Entity
@Table(name = "B_TABLE_NAME")
public class BEntity extends ... { 
...
}

当我在表创建\ alter time中启动tomcat服务器时(我使用代码优先构想)我有错误

  

错误:不成功:创建表A_TABLE_NAME_B_TABLE_NAME(...)

     

错误:ORA-00972:标识符太长

据我所知,ManyToOne关系可以存储为A_TABLE_NAME表中的列。为什么Hibernate试图创建表来存储这种关系(比如这是ManyToMany关系)?

1 个答案:

答案 0 :(得分:0)

@ManyToOne除非您指定@JoinTable注释,否则不会生成额外的表,因此我假设问题出在您所忽略的详细信息上