【发布时间】:2012-11-27 07:47:34
【问题描述】:
我正在尝试使用 OneToOne 关系创建域对象。 A 是父母,B 是孩子。
我尝试了许多不同的方法来将删除从 A 级联到 B,但是当我查看数据库创建时,它没有设置 ON DELETE CASCADE。
谁能看到我做错了什么
答:
@Entity
@Table(name = "financeaccountcurrencymapping")
public class FinanceAccountCurrencyMapping implements Serializable {
@Id
@GeneratedValue
private long id;
@OneToOne(cascade = CascadeType.ALL, optional = false, orphanRemoval = true, mappedBy = "financeAccountCurrencyMapping")
private FinanceAccount financeAccount;
我知道 CascadeType.ALL 或 orphanRemoval 应该可以解决问题,但它们没有。
乙:
@Entity
@Table(name = "financeaccount")
public class FinanceAccount implements Serializable {
@OneToOne(optional = true)
private FinanceAccountCurrencyMapping financeAccountCurrencyMapping;
有人能看出为什么它不会级联删除吗?
【问题讨论】:
-
我更喜欢 JPA 实现