2014年5月15日木曜日

KakeiWeb開発日記(3) : 一覧画面のページング

プログラミングスキル維持のため、家計簿システム(KakeiWeb)を作ろうという試み。 ●一覧画面のページング

(1)1ページ分のデータだけとってくるにはJPAのQuery#setFirstResult、Query#setMaxResultsを設定してクエリーを実行する

 public List getList(int page) {
  int first_result = (page-1) * rowsPerPage;
  TypedQuery q = em.createNamedQuery("CreditCard.findAll",CreditCard.class);
  q.setFirstResult(first_result);
  q.setMaxResults(rowsPerPage);
  return q.getResultList();
 }

(2)管理ビーンにJSFで扱いやすいようメソッド/プロパティを実装し、JSFで呼び出す

   
     
      
   


 public boolean hasNextPage() {
  return currentPage < pages;
 }
 public boolean hasPrevPage() {
  return currentPage > 1;
 }
 public String goPage(int page) {
  return "ListCreditCard?faces-redirect=true"+(page > 0 ? "&page="+page : null);
 }
 public int getCurrentPage() {
  return currentPage;
 }

前のページがないときなどは出したくないが、レイアウトが崩れるのでその辺は悩みどころ。
とりあえず今の状態で、完了とする。


●今後(短期課題)
済(1)一覧画面のページング処理実装
中(2)トランザクション編集画面の開発
    ・Excelフィーリング
    ・キーボード操作
    ・少ないキーストローク(自動日付、自動フィールド移動的な)
 (3)記入用Androidアプリの開発


●今後(中期課題)
 (1)本番環境をRaspberry Pi上へ構築する
 (2)マスタメンテ画面のテンプレート化


●今後(長期課題)
 (1)外部公開(Internet経由で入力・参照できるようにする)

0 件のコメント:

コメントを投稿