0

Javaで検索エンジンを開発しました。サーバー側でJavaサーブレットを使用しました。問題は、クエリごとに多くの結果が表示されることです。各結果は文字列として表されます。サーバー側のページネーションを実現するには?

4

3 に答える 3

2

ページネーションの一般的な考え方は、スキップ/制限パラメーターを使用することです。クライアント側とサーバー側のクエリにスキップ/制限パラメーターを設定する必要があります。このパラメーターをチェックして、期待される結果を返す必要があります。

パラメータの説明は次のとおりです。

skip : skips the number of results and return the others
limit : return the given number of results.

例 : クエリが 25 の結果を返し、それをページ分割したいとします。次に、最初のページで、クライアント側とサーバー側で skip=0, limit=10 を設定する必要があります。このパラメーターをチェックして、0 の結果をスキップし、そのうちの 10 個を返す必要があります。次に、最初のページの 0 ~ 9 の結果を返します。

2 ページ目では、skip=10、limit=10 でクエリを送信する必要があり、結果は 10 ~ 19 の間になります。

最後のページでは、クエリは skip=20, limit=10 になり、20 ~ 25 の結果が返されます。

これは、ページネーションがどのように機能するかの一般的な考え方です。ページネーションを使用するには、自分で実装する必要があります。

于 2012-12-09T17:30:26.233 に答える
0

実装は、キャッシュを使用しているテクノロジー、使用しているDB、新しいテクノロジーを使用するためのオープン度によって異なります。

サーブレットのみを使用したいとします...rownum機能を使用して、jspをクリックしたページ番号に基づいて結果を表示できます。

新しいテクノロジーを使用することにオープンな場合は、springdata、jparespositiryhttp ://www.petrikainulainen.net/programming/spring-framework/spring-data-jpa-tutorial-part-seven-pagination/を使用してください。

于 2012-12-09T13:33:32.737 に答える
0

Spring MCV を使用したことがある場合は、次のリンクを確認してください: http://blog.fawnanddoug.com/2012/05/pagination-with-spring-mvc-spring-data.html

ほとんどの Java Server Framework は、同様のものを提供するはずです。

于 2012-12-09T13:19:36.033 に答える