【问题标题】:Pageable with nested list spring boot可使用嵌套列表弹簧靴分页
【发布时间】:2021-12-09 00:12:19
【问题描述】:

我正在使用一个可分页对象来返回一个对象ResponseDto,其中包含一个记录列表

对象是这种形式:

public class ResponseDto{
   private String prop1;
   private String prop2;
   private List<NestedDto> nestedDto;
}

我可以使用Page&lt;ResponseDto&gt;List&lt;NestedDto&gt; 两个不同的查询,但我必须进入可分页内容并更新它以创建嵌套对象。

编辑:更多信息

所以我正在做的是:

Page<ResponseDto> response = repository.findRecord()

List<NestedDto> nested = otherRepository.findNestedRecord(someProp)

所以会是这样的

for(ResponseDto el: response.getContent()){
   el.setNestedDto(otherRepository.findNestedRecord(el.getSomeProp));
}

有没有更有效的方法来创建它?

【问题讨论】:

    标签: java spring spring-boot spring-data-jpa pagination


    【解决方案1】:

    我猜你在这个实现上没有做错任何事情。

    {
       "prop1": "anyProp1",
       "prop2": "anyProp2",
       "nestedDto": [
           {
               "attr1": "anyAttr1",
               "attr2": "anyAttr2"
           },
           {
               "attr1": "anyAttr1"
               "attr2": "anyAttr2"
           }
       ]
    }
    

    也许命名可以改变,但它是伪的,所以它并不重要。

    您还可以按(nestedDto.attr1 或nestedDto.attr2)进行排序和过滤

    【讨论】:

    • 感谢您的回答我已经添加了更多信息来描述问题
    猜你喜欢
    • 2017-12-22
    • 2018-02-14
    • 2019-05-03
    • 2018-07-12
    • 2021-04-20
    • 1970-01-01
    • 2023-01-07
    • 2023-04-01
    • 1970-01-01
    相关资源
    最近更新 更多