我正在使用Hibernate来存储有关文章引用的信息。我以此方式注释了我的类(class),以表达两篇文章之间的关系。
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@JoinTable(name = "CITATIONS")
private Set<Article> citingArticles = new HashSet<Article>();
不幸的是,这被翻译成对citingArticle的UNIQUE约束,这意味着我只能有一篇文章引用另一篇文章。
当然,这不是我想要的,如何删除UNIQUE约束?
最佳答案
如果您有多对多关系,则需要使用@ManyToMany
对其进行建模:
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@JoinTable(name = "CITATIONS")
private Set<Article> citingArticles = new HashSet<Article>();