Users
테이블의 모든 사용자로부터 일부 데이터를 가져오고 싶습니다. 나는 Data paging
을 사용해야 함을 발견했다. >https://backendless.com/feature-47-loading-data-objects-from-server-with-sorting/ 기능, 47에 설명 된대로 나는 (나는 또한 정렬해야하기 때문에) 같은 코드를 작성했지만, 다음이 코드는 첫 번째 페이지에서 데이터를 소요 알아 냈어요. 그런 다음 크기가 0이 아닐 때까지 다음 페이지로 이동하여 읽어야한다고 결정했습니다. 내가 대신 one.nextPage(this)
의 AsyncCallback과 nextPage 방법을 사용할 필요가 있다고 생각하지만 난 그렇게 할 경우,이 방법은 루프와 못했습니다모든 페이지에서 데이터를 검색하는 방법은 무엇입니까?
QueryOptions queryOptions = new QueryOptions();
List<String> list = new ArrayList<String>() ;
list.add("point DESC") ;
queryOptions.setSortBy(list);
BackendlessDataQuery backendlessDataQuery = new BackendlessDataQuery();
backendlessDataQuery.setQueryOptions(queryOptions);
Backendless.Data.of(BackendlessUser.class).find(backendlessDataQuery, new AsyncCallback<BackendlessCollection<BackendlessUser>>() {
@Override
public void handleResponse(BackendlessCollection<BackendlessUser> one) {
while(one.getCurrentPage().size()>0) {
Iterator<BackendlessUser> it = one.getCurrentPage().iterator();
while (it.hasNext()) {
//something here,not so important
}
one.nextPage(this);// here I want to get next page,
//but seems like it does not work, cause my loop became infinite
}
}
: 다음, 당신은 내 잘못 솔루션을 볼 수 있습니다. 그렇다면 문제를 어떻게 해결할 수 있습니까?
실제로 솔루션의 문제를 찾을 수없는,하지만 난이 사용하여 문제를 해결
이벤트를 사용해보세요. 그래서 기본적으로 첫 번째 호출이 완료되면 next_page_token을 호출 클래스에 전달합니다. 다음 토큰으로 다음 http 요청을 시작하십시오. 그것도 당신이 루프를 수행하지 않을 것을 의미합니다. – Eenvincible