2017-02-27 57 views
0

我目前遇到这样一个问题:如何在使用MongoDB进行Spring引导之后进行分页处理?

我有一个对象其具有一个数组属性烧烤。我想在用户界面中显示Bs,但由于数据太多,我必须以某种方式进行分页。问题是,我做了一些研究,但找不到解决方案,可以先放松,然后分页。

答:

{ 
    id : 1, 
    Bs : [{ 
     id: 29 
    },{ 
     id : 3 
    }] 
} 

如果我使用聚集,我可以放松了B类,但不能事后分页他们。分页是主要问题。

如果我使用PagingAndSortingRepository,我可以分页,但不能放松。即使我之后手动放松,因为我在放松之前分页,结果不会如预期的那样。

如果我使用Query - Criteria,我可以跳过&限制,但仍然不知道如何在分页之前放松。

大问题:我该如何先解开,然后对解开的结果进行分页?

编辑:

MongoDB中实施例的数据对象:

{ 
    id: 1, 
    ts: 1488208130000, 
    logs: [{ 
     id: 1, 
     type: 4 
    },{ 
     id: 2, 
     type: 7 
    }] 
}, 
{ 
    id: 2, 
    ts: 1488208150000, 
    logs: [{ 
     id: 2, 
     type: 4 
    }] 
} 

我想如果指定经由TS查询logs用的startDate &结束日期,内容描述之间的TS,也经由type。但是如果你选择了上周的数据对象,那么数据对象就太多了(他们几乎每秒会有1个数据),所以我需要分页。我不知道数据对象中有多少个日志。所以,我不能先分页,然后解开日志。数字可能不匹配。我可能会查询大小为100的数据收集2.页面,但是当我解开日志时,可能会有47个与所需的type

回答

相关问题