目次 > 第2章 Server(Web)版チュートリアル >  2.7 一覧表示 > 2.7.1 アクションフォームクラスの編集

2.7.1 アクションフォームクラスの編集

本節では、Server(Web)版が提供するページリンク機能を利用し、1ページに10件ずつユーザ情報を表示する。
ページリンク機能を利用するにあたり、アクションフォームに以下の属性を定義する必要がある。

  • 表示行数を保持する属性
  • 表示開始インデックスを保持する属性
  • 一覧情報の全件数を保持する属性
  • 表示データを保持するリスト(配列)

また、表示データの保持方法には以下の2種類がある。

  1. アクションフォームが表示データを全件保持する
  2. アクションフォームが1ページ分のデータを保持する

1の場合、データを全件取得するビジネスロジックを1度だけ実行する。2の場合、ページを切り替えるタイミングで1ページ分のデータを取得するビジネスロジックを実行する。

本節では、2の方法で実装していく。

手順

本項では以下の作業が必要になる。

(1) アクションフォームクラスの編集

  1. “jp.terasoluna.thin.tutorial.web.usermanager.form.UserManagerForm”を開き、以下の属性とアクセッサメソッドを追加する。
    package jp.terasoluna.thin.tutorial.web.usermanager.form;
    import java.util.List;
    import jp.terasoluna.fw.web.struts.form.ValidatorActionFormEx;
    import jp.terasoluna.thin.tutorial.web.usermanager.vo.SelectUserOutput;
    
    /**
     * ユーザー管理業務で使用するアクションフォーム。
     * 
     */
    public class UserManagerForm extends ValidatorActionFormEx {
    
        ・・・略・・・
    
        /*一覧画面で使用する*/
    
        /**
         * 表示行数。
         */
        private String row = "10";
        
        /**
         * 開始インデックス。
         */
        private String startIndex ="0";
        
        /**
         * 全件数。
         */
        private String totalCount = null;
        
        /**
         * 表示用ユーザリスト。
         */
        private List<SelectUserOutput> users = null;
    
    
        ・・・略・・・
    
        /**
         * 表示行数を返却する。
         * @return 表示行数
         */
        public String getRow() {
            return row;
        }
        
        /**
         * 開始インデックスを返却する。
         * @return 開始インデックス
         */
        public String getStartIndex() {
            return startIndex;
        }
        
        /**
         * 開始インデックスを設定する。
         * @param startIndex 開始インデックス
         */
        public void setStartIndex(String startIndex) {
            this.startIndex = startIndex;
        }
        
        /**
         * 全件数を返却する。
         * @return 全件数
         */
        public String getTotalCount() {
            return totalCount;
        }
        
        /**
         * 全件数を返却する。
         * @param totalCount 全件数
         */
        public void setTotalCount(String totalCount) {
            this.totalCount = totalCount;
        }
    
        /**
         * 表示用ユーザリストを返却する。
         * @return 表示用ユーザリスト
         */
        public List<SelectUserOutput> getUsers() {
            return users;
        }
    
        /**
         * 表示用ユーザリストを設定する。
         * @param users 表示用ユーザリスト
         */
        public void setUsers(List<SelectUserOutput> users) {
            this.users = users;
        }
    

次項:2.7.2 入出力クラスの作成と設定

Copyright (C) 2009 NTT DATA CORPORATION