首页
学习
活动
专区
圈层
工具
发布

单向JPA
EN

Stack Overflow用户
提问于 2013-02-17 14:30:23
回答 1查看 344关注 0票数 2

我有一个数据库(JPA 2 Eclipselink),其中有订单和条目,每个订单可以有许多项,每个项只能分配给一个订单。这是单向关系。

订单实体:

代码语言:javascript
复制
@Entity
public class Order implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;
}

项目实体有:

代码语言:javascript
复制
@Entity
public class Item implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;
    @ManyToOne
    Order o;
}

但是,如何设置如果从数据库中删除订单,所有与其相关的项目都将被删除?在单向关系中是可能的,还是我必须创建双向并将@OneToMany(cascade=remove)放在Order实体类中?或者保持单向,但拥有方将是订单,并从项目实体中删除对订单的任何引用?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-17 14:38:34

要么按照您在问题中的建议,使关联双向并添加级联,要么解释删除与订单链接的所有项目(使用JPQL删除查询,或者搜索它们,然后删除它们),然后删除订单。

在这种情况下,双向关联是有意义的,您可能会从代码中的其他几个地方受益。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14922129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档