我有一个方法可以返回在couchbase repo中找到的所有文件,结果是一个Page<MyObject>
对象,这很好:
...
import org.springframework.data.domain.Page;
Page<MyObject> myObjects = myRepo
.findAll(new PageRequest(page == null ? 0 : page, size));
...
我还有另一种方法可以返回Iterable<MyObject>
,如下所示。该方法工作正常,从couchbase检索的结果是可以的。
...
Bucket myBucket = myRepo.getCouchbaseOperations().getCouchbaseBucket();
PrefixQuery field = SearchQuery.prefix(searchParameter);
SearchQueryResult searchQueryResult = myBucket
.query(new SearchQuery("text-search", field)
.fields("name").explain());
List <String> idList = new ArrayList<>();
for (SearchQueryRow searchQueryRow : searchQueryResult.hits()) {
idList.add(searchQueryRow.id());
}
Iterable<MyObject> myObjects = myRepo.findAll(idList);
...
我的问题是:如何将Iterable<MyObject> myObjects
转换为Page<MyObject> myObjects
?
答案 0 :(得分:1)
我终于找到了如何做到这一点,我发布了答案,以防将来可以帮助任何人。我通过这样做实现了它:
C