[英]Hibernate inverse join for composite primary key
我是新來的冬眠。
我有以下情況,
@Entity(name="A")
Class A {
@Id
int id;
Set<B> listB;
}
@Entity(name="B")
Class B {
@Id
CompositebPK bPk;
}
Class CompositebPK {
@Column(name="id")
int aId;
@Column(name="user_name")
String uname;
}
@Entity (name = "user")
Class User {
@Column (name ="user_name")
String uname;
}
表結構如下,
Table A:
int id
Table B:
int id
String uname
User:
String uname
String password
A對B是1對多的關系。 B對用戶是一對多。
我想在A中有B的列表。
解決情況的最佳方法是什么?
在網上,當我搜索時,我只是獲得有關簡單列的反向連接的信息,如果我嘗試不解決這個問題,那么是否有一種特殊的方法來實現這一目標?
嘗試以下映射配置:
在A
實體類別中:
@Entity(name="A")
class A {
@Id
int id;
@OneToMany(fetch = FetchType.LAZY, mappedBy = "bPk.a")
@Cascade(value = { CascadeType.DELETE })
Set<B> listB;
}
在CompositebPk
:
class CompositebPK {
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumns({ @JoinColumn(referencedColumnName = "id", nullable = false) })
A a;
@Column(name="user_name")
String uname;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.