4

Play FrameworkでElasticSearchモジュールを使用して本を検索しようとしていますが、次の方法でコントローラーで検索を実行すると、ユーザーが入力した検索文字列に基づいて本のリストが返されます。

public static void bookList(String search){
    SearchResults<Book> searchResult =  ElasticSearch.search(QueryBuilders.queryString(search)  , Book.class);
    List<Book> bookList = searchResult.objects  ;
    render(bookList);
}

次に、得られた結果に対してページ付けを実行する必要があります。Java APIを使用してそれを行うにはどうすればよいですか?

4

1 に答える 1

4

PlayのElasticsearchモジュールのドキュメント:

ElasticSearch.query()を呼び出し、続いてクエリパラメータを設定します(ページングなど)

したがって、あなたの場合、iからj個の検索結果を取得したいとします。

SearchResults<Book> searchResult =  ElasticSearch.query(QueryBuilders.queryString(search), Book.class).from(i).size(j).fetch();
于 2012-05-14T03:47:50.370 に答える