我是hibernate的新手,以及注释如何在数据库中创建表。 我认为想要的是与this question有关,但我不确定
假设有一个类Ticket:
@Entity
public class Ticket {
@ManyToMany
private Set<Person> buyers;
@ManyToMany
private List<Person> collectors;
...
...
}
以下行根据需要创建表ticket_person:
private Set<Person> buyers;
但是下一行,同样是Person类在对象收集器中使用,因此无法再次创建表ticket_person,但是需要同时拥有对象买方和收集器。那么如何解决这个问题呢?有没有什么方法可以覆盖默认表名称ticket_person?或者任何其他解决方案,让我们创建具有相同字段的2个表,但实体中的不同对象?
答案 0 :(得分:1)
这适用于Jointable注释。从API文档中可以看出,所有属性都是可选的。在这种情况下,只应影响连接表的名称,因此以下就足够了:
@JoinTable(name= "ticket_to_collectors")
@ManyToMany
private List<Person> collectors;