我有两个实体 Personnel 和 Qualfication 和 @ManyToMany。
@Entity
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString
public class Personnel {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
private String nom;
private String prenom;
@Column(nullable = true)
private int nbMission;
@OneToMany(mappedBy = "personnel", fetch = FetchType.LAZY)
private List<Indisponibilite> listIndisponibilites;
@ManyToOne
@JoinColumn(name = "grade_id", nullable = false)
private Grade grade;
@ManyToOne
@JoinColumn(name = "specialite_id", nullable = false)
private Specialite specialite;
@ManyToMany
@JoinTable(name = "personnel_qualification", joinColumns = @JoinColumn(name = "personnel_id"),
inverseJoinColumns = @JoinColumn(name = "qualification_id"))
private List<Qualification> listQualification;
}
@Entity
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString
public class Qualification {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
private String libelle;
@JsonIgnore
@ManyToOne
@JoinColumn(name = "specialite_id", nullable = false)
private Specialite specialite;
@JsonIgnore
@ManyToMany(mappedBy = "listQualification")
private List<Personnel> listPersonnel;
@JsonIgnore
@ManyToMany(mappedBy = "listQualification")
private List<SousMission> listSousMissions;
}
问题是当我手动更改数据库中连接表personnel_qualification
中的Qualification id并刷新所有人员id时获得相同的Qualification id。
当我更改人员 ID 时同样的问题。