繁体   English   中英

JPA @OneToOne关系删除

[英]JPA @OneToOne relationship deletion

我具有以下@OneToOne关系:

@Entity
public class CarUser {
    @OneToOne
    @JoinColumn(name = "use")
    private User user;
}

@Entity
public class User {
}

基本上,User在核心模型中,而CarUser在扩展模型中。 而且用户对CarUser一无所知(我无法在其上定义逆关系)。

问题是,当我删除用户时,是否还能级联删除CarUser?

根据定义,如果您要声明“用户对CarUser一无所知”,则无法让持久层为您层叠。

但是,您不必一定要声明-这可能不是对设计的正确理解。 在同一数据库架构内的实体彼此了解是合理的。

让我们这样说吧-即使(在制造/会计系统中)CostingModule和LedgerModule在不同的模块中,也绝对希望它们进行通信和交互。

您也可以改为使用数据库中的外键约束或触发器来实现。

alter table CARUSER add constraint CARUSER_USER foreign key (ID) 
  references "USER" (ID) on delete cascade;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM