
嗨,我是 Hibernate 的新手,正在嘗試構建一個 Rest APP。
我在資料庫中有 3 個表,如上圖所示。
USERS 表與 GROUPS 表有 ManyToMany 關系,USER_GROUP 是關聯表。
我正在使用 ORM、Hibernate 和 CurdRepository。
我可以使用 CurdRepository 的 save() 方法插入到用戶表和組表中。
現在我試圖僅在 GROUPS 表和 USER_GROUP 表中添加一行。誰能引導我走向正確的方向?
例如:
我想將 groupid 添加到 GROUPS 表,然后將其與用戶 id 相關聯
假設我想在 GROUPS 中插入 (10) groupid,在 USER_GROUP 表中插入 (14,10)。
ORM 是否可行,如果是,如何?
提前致謝
uj5u.com熱心網友回復:
網上有很多關于這個模型的文章來展示如何使用 Hibernate。這是我通過谷歌搜索“休眠用戶組示例”快速找到的一篇文章:https : //www.codejava.net/frameworks/hibernate/hibernate-many-to-many-association-annotations-example
uj5u.com熱心網友回復:
要使用現有的連接表,USE_GROUP,用戶物體將如下所示。
@Entity
public class Users {
@Id
private Integer userid;
private String password;
@ManyToMany(cascade = { CascadeType.MERGE, CascadeType.PERSIST })
@JoinTable(name = "USER_GROUP", joinColumns = { @JoinColumn(name = "USERID") },
inverseJoinColumns = { @JoinColumn(name = "GROUPID") })
private Set<Groups> groups;
// Getter, Setter
}
然后客戶端代碼,添加新的用戶和組,如下所示。
User user = new User()
// set password , etc
Set<Groups> groups = new HashSet<>();
Group group = new Group();
// set
groups.add(group);
user.setGroups(groups);
userRepository.save(user);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/324713.html
