tôi cần phải tạo ra một bảng tham gia trong cơ sở dữ liệu của tôi sử dụng JPA
chú thích sao cho kết quả sẽ là thế này:Làm cách nào để tạo bảng nối với chú thích JPA?
Cho đến nay tôi chỉ thực hiện 2 thực thể:
@Entity
@Table(name="USERS", schema="ADMIN")
public class User implements Serializable {
private static final long serialVersionUID = -1244856316278032177L;
@Id
@Column(nullable = false)
private String userid;
@Column(nullable = false)
private String password;
public String getUserid() {
return userid;
}
public void setUserid(String userid) {
this.userid = userid;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
@Entity
@Table(name="GROUPS", schema="ADMIN")
public class Group implements Serializable {
private static final long serialVersionUID = -7274308564659753174L;
@Id
@Column(nullable = false)
private String groupid;
public String getGroupid() {
return groupid;
}
public void setGroupid(String groupid) {
this.groupid = groupid;
}
}
Tôi có nên tạo một thực thể khác có tên là USER_GROUP
hoặc tôi có thể thêm một số chú thích, vì vậy, t ông tham gia bảng sẽ được tạo ra tự động khi tôi chạy tạo bảng từ thực thể (ORM)?
Tôi nên chú thích các thực thể của mình để đạt được giống như trong hình ảnh như thế nào?
Cardinality giữa nhóm và các thực thể người dùng là gì? Có phải @OneToMany, để mỗi nhóm có 0 .. * người dùng? Hay là ManyToMany? – jFrenetic
Đây là một @OneToMany, do đó mỗi nhóm có 0 .. * người dùng, như bạn đã nói. Người dùng phải thuộc về một và chỉ một nhóm, nhưng một nhóm có thể có nhiều người dùng (0 .. *). – sfrj