猿问

从嵌套列表中检索对象 Spring JpaRepository

我有一个存储库


public interface GroupRepository extends JpaRepository<Group, Integer> {

}

该组确实有一个项目清单


private List<Item> items;

每个Item都有一个position属性


private int position;

如何通过知道其中一个列表中存在的项目的位置来检索组 ?


项目.java

public class Item extends PersistedBean{

 private int position;

 private Group group;


 @Column(name = "Position")

  public int getPosition() {

    return position;

  }


  @ManyToOne(fetch = FetchType.EAGER)

  @JoinColumn(name = "GroupId", referencedColumnName = "Id")

  public Group getGroup() {

    return group;

  }

}

组.java

public class Group extends PersistedBean {

 private int position;

 private List<Item> items;


  @Column(name = "Position")

  public int getPosition() {

    return position;

  }


  @OneToMany(cascade = CascadeType.ALL, mappedBy = "group", orphanRemoval = false)

  public List<Item> getItems() {

    return items;

  }


}


收到一只叮咚
浏览 163回答 1
1回答

慕哥9229398

您可以将查询添加到您的JpaRepository<Group, Integer>存储库,类似于应该工作:@Query("SELECT g FROM Group g " +&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;"JOIN g.items i ON i.position IN :p")List<Group> getGroupsWhenPositionMatchAnyRelatedItem(@Param("p") Integer p);
随时随地看视频慕课网APP

相关分类

Java
我要回答