我有2个表,View(viewId INTEGER)和Auth(登录VARCHAR)。我想使用hibernate 4和注释创建另一个加入View和Aut的表。 注意我在该表中添加了另一个字段visibile。
@Entity
public class ViewAut {
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="VIEW_VIEWID")
private Rview view;
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="AUT_USERID")
private Aut aut;
@Column
private boolean visibile;
// Getter & setters
}
View对象有一组ViewAut对象
@Entity
public class View {
// DONT KNOW HOW TO WRITE ANNOTATION FOR THIS SCENARIO
private Set<ViewAut> authorizations;
相似,Auth对象有一组ViewAut对象
@Entity
public class Aut {
// DONT KNOW HOW TO WRITE ANNOTATION FOR THIS SCENARIO
private Set<ViewAut> authorizations;
请指导我如何在hibernate 4注释中编写这些连接?
答案 0 :(得分:0)
使用Embeddable
无法完成您要完成的任务。 JPA将Embeddable
定义为一个类,其实例存储为拥有实体的内在部分并共享实体的标识。嵌入对象的每个持久属性或字段都映射到实体的数据库表,请参阅Embeddable
在这种情况下,您应该将此ViewAut
建模为另一个Entity
,并使用OneToMany
建立它们之间的关系。