我有以下@OneToOne关系:
@Entity
public class CarUser {
@OneToOne
@JoinColumn(name = "use")
private User user;
}
@Entity
public class User {
}基本上,用户在核心模型中,而CarUser在扩展模型中。用户不应该知道任何关于CarUser的事情(我不能在它上面定义一个反向关系)。
问题是,当我删除用户时,有没有什么方法可以让我也级联删除CarUser?
发布于 2013-05-13 09:39:52
根据定义,如果你想声明“用户不应该知道任何关于CarUser的东西”,你就不能让持久层为你级联。
不过,你不一定需要这样说--这可能不是正确的设计理解。对于同一数据库模式中的实体来说,相互了解是合理的。
这么说吧--尽管(在制造/会计系统中) CostingModule和LedgerModule位于不同的模块中,但它们绝对可以进行通信和交互。
您也可以使用数据库中的外键约束或触发器来执行此操作。
alter table CARUSER add constraint CARUSER_USER foreign key (ID)
references "USER" (ID) on delete cascade;https://stackoverflow.com/questions/16511608
复制相似问题