データベースからいくつかのレコードをフェッチする必要があり、JSP でページごとに 50 レコードを表示する必要があります。ページには、画面上に最初、前、次、および最後のボタンがあります。ストラットまたは同様のフレームワークで同様の機能を実装した人はいますか? また、一度にすべてのレコードを取得したくありません。実装方法を教えてください。
前もって感謝します
これにはDisplaytagライブラリを使用します。Strutsおよびjspと組み合わせるとうまく機能し、並べ替えとページ付けを提供します。
おそらく、すべてのクライアント側の処理を処理し、サーバー側のコードからデータを取得する JQuery プラグインを試すことができます。http://www.datatables.net/を試してみてください。ページ付け、フィルタリング、順序付けを処理し、より多くの機能を備えているからです。ここでは、DataTables を Java サーブレット アプリケーションhttp://www.codeproject.com/KB/java/JQuery-DataTables-Java.aspxと統合する方法について説明します。
1)アクションクラスでアクションでページの総数を計算します(データベースから取得し、totalPages = totalEntries / pageSizeのように計算します)
2) jsp から pageNumber を送信する (ユーザーがページ番号をクリックしている間)、jsp から pageSize を送信する (ユーザーが pageSize を指定する必要がある場合)、またはアクションから Business に送信します。String query = "select empid, ename from employee by joindate desc limit " + start + "," + pageSize;
int start = (pageNumber * pageSize - pageSize); のように Start を計算します。
Struts 2 Jq Grid プラグインを使用struts2用に設計されたプラグインですdisplay tag
。使うだけで実現できstruts2 jqgrid tags
、他にもたくさんの機能があります
Strust2 基準 API を使用して最大結果を設定する
List<Class_Name> records = new ArrayList<Class_Name>();
private static SessionFactory sf = new Configuration().configure().buildSessionFactory();
Session s = sf.openSession();
Criteria cr = s.createCriteria(Class_Name.class);
cr.setMaxResults(50);
records = cr.list();
s.close();