我想當我洗掉一個物體時,另一個物體會被洗掉
這是第一個物體
@Table(name = "qualification")
public class Qualification {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "QUALIFICATION_PK_SEQ")
@SequenceGenerator(name = "QUALIFICATION_PK_SEQ", sequenceName = "QUALIFICATION_PK_SEQ", allocationSize = 1)
private Long id;
@JsonManagedReference
@OneToOne(cascade = CascadeType.ALL)
private User user;
//attributes, getters, setters
}
另一個物體
@Table(name = "user")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "USER_PK_SEQ")
@SequenceGenerator(name = "USER_PK_SEQ", sequenceName = "USER_PK_SEQ", allocationSize = 1)
private Long id;
@OneToOne(cascade = CascadeType.ALL)
private Qualification qualification;
//attributes, getters, setters
}
所以當我洗掉一個用戶時,我得到了這個錯誤
oracle.jdbc.OracleDatabaseException: oracle-02292 找到完整性約束子記錄
提前致謝
uj5u.com熱心網友回復:
您必須將一側設為“所有者”,將另一側設為“反面”。
通過映射,您必須分離用戶和資格之間的關系。
您可以使用 mappedBy 屬性執行此操作:
@OneToOne(cascade = CascadeType.ALL, mappedBy = "user")
private Qualification qualification;
所以 mappedBy 指向關系的所有者方。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/530904.html
標籤:爪哇春天弹簧靴jpa
