我有两个对象,Customer和Store。我希望用户(来自用户表)能够将客户或商店指定为“首选”。然后,我将能够看到喜欢不同商店或客户的用户列表。这是否可以通过hibernate映射实现?
如果可以在每个用户的商店客户上设置首选状态,那么表结构会是什么样的?
答案 0 :(得分:1)
因此,用户有许多首选商店,商店是许多用户的首选商店。因此,这是User和Store之间的ManyToMany关联。
按照in the documentation所解释的那样进行映射:
public class User {
@ManyToMany
private Set<Store> preferredStores = new HashSet<Store>(0);
}
public class Store {
// necessary only if you want the association to be bidirectional:
@ManyToMany(mappedBy = "preferredStores")
private Set<User> preferringUsers = new HashSet<User>(0);
}