首页 > 解决方案 > 改变hibernate查找相关数据的方式?

问题描述

假设我有以下“父母” pojo ...

@Entity
@Table(name = "parent")  
public class Parent{
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @OneToMany(fetch=FetchType.LAZY, mappedBy = "parent", cascade = {CascadeType.ALL})
    @JsonIgnoreProperties("parent")
    List<Child> children;
}

我有以下孩子 POJO :

@Entity
@Table(name = "child")
public class Child{
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @ManyToOne
    @JoinColumn(name="parent_id")
    private Parent parent;
}

这样做的结果是我有两个表,我的 jpa 存储库将使用子表中的 parent_id 字段执行查询。

但是,如果我希望它像查找一样,在哪里有第三个关系表,我将子 ID 和父 ID 作为一行,这就是关系?我可以为此修改我的 spring - jpa / hibernate 设置吗?如果是这样,将不胜感激一些帮助!

标签: javahibernatespring-bootspring-data-jpa

解决方案


推荐阅读