1
テーブルUsers
とGroups
の間にM:Nの関係があります。今私はJPAを使用してこれら2つのテーブルを結合しようとしていますが、いつもこの例外が発生します。JPAのManyToManyマッピング
[GROUPS.name]フィールドに複数の書き込み可能なマッピングが存在します。書き込み可能と定義できるのは1つだけです。他はすべて読み取り専用に指定する必要があります。ここで
は(私は簡潔にするためゲッターとセッターを囲みませんでした)私のUsers
クラスであり、それがAdmin
クラスといくつかの追加のプロパティを持つSignedUser
クラスによって実装されています。
@Entity
@Inheritance(strategy = InheritanceType.JOINED)
public class Users implements Serializable {
@Id
@Column(name = "login", nullable = false, length = 10)
private String login;
@Column(name = "name", nullable = false, length = 30)
private String name;
@Column(name = "surname", nullable = false, length = 50)
private String surname;
@Column(name = "email", nullable = false, length = 100)
private String email;
@Column(name = "password", nullable = false, length = 20)
private String password;
@ManyToMany(mappedBy="users")
private List<Groups> groups;
、これはGroup
クラスです:
@Entity
public class Groups implements Serializable {
@Id
@Column(name = "name", nullable = false, length = 20)
private String groupName;
@Column(name = "name", nullable = false, length = 50)
private String descr;
@ManyToMany
@JoinTable(name = "user_group",
joinColumns = {@JoinColumn(name = "groupName")},
inverseJoinColumns = {@JoinColumn(name = "login")})
private List<Users> users;
私もUsers
クラスにJoinTable
注釈を入れてみましたが、それは同じ結果に終わりました。事前にアドバイスをお寄せいただきありがとうございます。クラスで
ありがとう、私は実際にこの最後の夜をどのように見落とすことができたのかわかりません... –