【问题标题】:Spring Crud Repository Custom left join querySpring Crud Repository 自定义左连接查询
【发布时间】:2016-01-30 22:10:02
【问题描述】:

我正在使用 spring data jpa 开发 Spring boot 项目。

我有两个具有一对多关系的实体。

床位和分配

class Allocations(){
....

 @ManyToOne
     @JoinColumn(name="bedId" , nullable=true)
      private Beds beds;
.....
}

class Beds(){
....
@OneToMany(mappedBy="beds")
     @JsonIgnore
     private List<Allocations> allocations;
....
}

在分配存储库中,当我执行 findAll() 时,我可以使用 bedID 获取所有分配。

但我想找到所有未分配的床。

想在床上执行左连接。

@Query("Select a from Beds b left join Allocations a on a.beds.bedID = b.bedId ")
    public List<Allocations> findtest(); 

如何进行上述活动。

我也不能在床上做 findall() 因为它不会给我分配表的值。

之前我使用@jsonback/managedreferences 注释来查找所有床位及其分配,但是当我添加新分配时,我得到了 json 托管引用错误,所以我使用了@Jsonignore 注释。

请提出所需的解决方案

【问题讨论】:

    标签: spring-boot spring-data


    【解决方案1】:

    我得到了执行左连接的查询。

    @Query("Select b , a from Beds b left join b.allocations a ")
    

    【讨论】:

      猜你喜欢
      • 2019-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-17
      相关资源
      最近更新 更多