パッケージ org.opengion.hayabusa.db

インタフェース DBTableModel

  • すべてのスーパーインタフェース:
    DataModel<java.lang.String>
    既知の実装クラスのリスト:
    DBTableModelEditor, DBTableModelImpl, DBTableModelSorter

    public interface DBTableModel
    extends DataModel<java.lang.String>
    javax.swing.table.TableModel インターフェースを継承したデータベース情報を TableModel情報にマッピングするのに利用します。 DataModel<String> インターフェースを継承しています。
    機能分類
    テーブル管理
    バージョン
    4.0
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK5.0,
    • フィールドの概要

      フィールド 
      修飾子とタイプ フィールド 説明
      static boolean DEFAULT_CHECKED
      行指定用のチェックボックスに対して初期値を 選択済みにするか、 非選択済みにするかのデフォルト値を指定します。
      static boolean DEFAULT_WRITABLE
      行指定の書込み許可を与えます。
    • メソッドの概要

      すべてのメソッド インスタンス・メソッド abstractメソッド 
      修飾子とタイプ メソッド 説明
      void addColumnValues​(java.lang.String[] values)
      row あるセルの属性値配列を追加登録します。
      void addColumnValues​(java.lang.String[] values, java.lang.String modType, boolean rw)
      row あるセルの属性値配列を追加登録します。
      void addMustType​(int dbColumn, java.lang.String type)
      カラム(列)にmustタイプ値を割り当てます。
      void addValues​(java.lang.String[] values, int aRow)
      row の下に属性値配列を追加登録します。
      void addValues​(java.lang.String[] values, int aRow, boolean isWritable)
      row の下に属性値配列を追加登録します。
      int getColumnCount()
      データテーブル内の列の数を返します。
      java.lang.String getColumnLabel​(int column)
      カラムのラベル名を返します。
      java.lang.String getColumnName​(int column)
      カラム名を取得します。
      int getColumnNo​(java.lang.String columnName, boolean useThrow)
      カラム名をもとに、そのカラム番号を返します。
      java.lang.String getConsistencyKey()
      検索されたDBTableModelが登録時に同一かどうかを判断する為の 整合性キーを取得します。
      DBColumn getDBColumn​(int clm)
      カラム(列)のカラムオブジェクトを返します。
      DBColumn[] getDBColumns()
      カラムオブジェクト配列を返します。
      java.lang.String[] getMustAnyArray()
      mustType="mustAny" 他のカラム名を、CSV形式として返します。
      java.lang.String[] getMustArray()
      mustType="must"時のカラム名を、CSV形式として返します。
      java.lang.String getValue​(int aRow, java.lang.String columnName)
      row および columnName にあるセルの属性値をStringに変換して返します。
      void init​(int columnCount)
      このオブジェクトを初期化します。
      boolean isOverflow()
      検索結果が オーバーフローしたかどうかをチェックします。
      boolean isRowChecked​(int row)
      書き込み可能な行(rowWritable == true)のチェックボックスに対して 初期値を 選択済みか、非選択済みかを返します。
      boolean isRowWritable​(int aRow)
      書込み許可を返します。
      DBTableModel newModel()
      このオブジェクトをヘッダー部分をコピーし、データを初期化します。
      void removeValue​(int aRow)
      行を物理削除します。
      void resetModify()
      変更済みフラグを元に戻します。
      void resetModify​(int aRow)
      変更済みフラグを元に戻します。
      void resetRow​(int row)
      変更データを初期値(元の取り込んだ状態)に戻します。
      void rowDelete​(int aRow)
      行を削除します。
      void rowDelete​(java.lang.String[] values, int aRow)
      row にあるセルのオブジェクト値を置き換えて、行を削除します。
      void setDBColumn​(int dbColumn, DBColumn clm)
      カラム(列)にカラムオブジェクトを割り当てます。
      void setDefaultRowChecked​(boolean rw)
      書き込み可能な行(rowWritable == true)のチェックボックスに対して 初期値を 選択済みにするか、非選択済みにするかを指定します。
      void setDefaultRowWritable​(boolean rw)
      行指定の書込み許可を与えます。
      void setOverflow​(boolean of)
      検索結果が オーバーフローしたかどうかを設定します。
      void setRowChecked​(int aRow, boolean rw)
      書き込み可能な行(rowWritable == true)のチェックボックスに対して 初期値を 選択済みにするか、非選択済みにするかを指定します。
      void setRowWritable​(int aRow, boolean rw)
      行が書き込み可能かどうかをセットします。
      void setValue​(int aRow, java.lang.String columnName, java.lang.String value)
      column に対応した 値を登録します。
      void setValueAt​(java.lang.String value, int aRow, int aColumn)
      column および row にあるセルのオブジェクト値を設定します。
    • フィールドの詳細

      • DEFAULT_WRITABLE

        static final boolean DEFAULT_WRITABLE
        行指定の書込み許可を与えます。 具体的には,チェックボックスの表示/非表示を指定します。 これが true の場合は,書込み許可です。(チェックボックスを表示) false の場合は,書込み不許可(チェックボックスは表示されません。) 行毎に書込み許可/不許可を指定する場合は,1カラム目に writable カラムを用意して true/false を指定します。 この writable カラムとの論理積により最終的にチェックボックスの 表示の ON/OFF が決まります。 このデフォルト値は、true に設定されています。
        関連項目:
        定数フィールド値
      • DEFAULT_CHECKED

        static final boolean DEFAULT_CHECKED
        行指定用のチェックボックスに対して初期値を 選択済みにするか、 非選択済みにするかのデフォルト値を指定します。 このデフォルト値は、false に設定されています。
        関連項目:
        定数フィールド値
    • メソッドの詳細

      • init

        void init​(int columnCount)
        このオブジェクトを初期化します。 指定の引数分の内部配列を作成します。 具体的には,DBColumn の数を指定することになります。
        パラメータ:
        columnCount - カラム数
      • newModel

        DBTableModel newModel()
        このオブジェクトをヘッダー部分をコピーし、データを初期化します。 これは、カラムなどヘッダー系の情報は、元と同じオブジェクトを共有し、 データ部のみ空にした DBTableModel を作成することを意味します。 この際、consistencyKey も複写しますので、整合性は崩れないように、 データ登録を行う必要があります。
        戻り値:
        DBTableModelオブジェクト
        変更履歴:
        4.0.0.0 (2007/06/28) 新規作成
      • getColumnLabel

        java.lang.String getColumnLabel​(int column)
        カラムのラベル名を返します。 カラムの項目名に対して,見える形の文字列を返します。 一般には,リソースバンドルと組合せて,各国ロケール毎にラベルを 切替えます。 セットされた DBColumn#getLabel( int ) の値が返されます。
        パラメータ:
        column - カラム番号
        戻り値:
        カラムのラベル名
      • getValue

        java.lang.String getValue​(int aRow,
                                  java.lang.String columnName)
        row および columnName にあるセルの属性値をStringに変換して返します。
        パラメータ:
        aRow - 値が参照される行
        columnName - 値が参照されるカラム名
        戻り値:
        指定されたセルの値 String
        関連項目:
        DataModel.getValue( int , int )
      • setDBColumn

        void setDBColumn​(int dbColumn,
                         DBColumn clm)
        カラム(列)にカラムオブジェクトを割り当てます。 カラムオブジェクトは,ラベルやネームなど,そのカラム情報を 保持したオブジェクトです。
        パラメータ:
        dbColumn - カラムオブジェクト
        clm - ヘッダーを適応するカラム(列)
      • getDBColumn

        DBColumn getDBColumn​(int clm)
        カラム(列)のカラムオブジェクトを返します。 カラムオブジェクトは,ラベルやネームなど,そのカラム情報を 保持したオブジェクトです。
        パラメータ:
        clm - ヘッダーを適応するカラム(列)
        戻り値:
        DBColumnカラムオブジェクト
      • getDBColumns

        DBColumn[] getDBColumns()
        カラムオブジェクト配列を返します。 カラムオブジェクトは,ラベルやネームなど,そのカラム情報を 保持したオブジェクトです。
        戻り値:
        カラムオブジェクト配列
        変更履歴:
        4.0.0.0 (2005/12/31) 新規追加
      • getColumnNo

        int getColumnNo​(java.lang.String columnName,
                        boolean useThrow)
        カラム名をもとに、そのカラム番号を返します。 useThrow が、true の場合は、カラム名が存在しない場合は、 HybsSystemException を throw します。useThrow が、false の場合は、カラム名が存在しない場合は、 -1 を返します。
        パラメータ:
        columnName - カラム名
        useThrow - カラム名が存在しない場合に、Exception を throw するかどうか
        戻り値:
        カラム番号
        変更履歴:
        4.0.0.0 (2005/12/31) 新規追加
      • resetModify

        void resetModify()
        変更済みフラグを元に戻します。 一般には,データベースにテーブルモデルを登録するタイミングで、 変更済みフラグを元に戻します。
      • resetRow

        void resetRow​(int row)
        変更データを初期値(元の取り込んだ状態)に戻します。 変更タイプ(追加/変更/削除)に応じて、処理されます。 追加時は、追加された行を削除します。 変更時は、変更された行を元に戻します。 削除時は、削除フラグを解除します。 それ以外の場合(変更されていない場合)は、なにもしません。
        パラメータ:
        row - 処理を戻す(取り消す)行
      • isRowWritable

        boolean isRowWritable​(int aRow)
        書込み許可を返します。
        パラメータ:
        aRow - 値が参照される行
        戻り値:
        書込み可能(true)/不可能(false)
      • isRowChecked

        boolean isRowChecked​(int row)
        書き込み可能な行(rowWritable == true)のチェックボックスに対して 初期値を 選択済みか、非選択済みかを返します。
        パラメータ:
        row - 値が参照される行
        戻り値:
        初期値チェックON(true)/チェックOFF(false)
      • isOverflow

        boolean isOverflow()
        検索結果が オーバーフローしたかどうかをチェックします。 Query で検索した場合に、DB_MAX_ROW_COUNT または、Query.setMaxRowCount( int maxRowCount ) で指定された値よりも検索結果が多い場合に、DBTableModel は、先の設定値までの データを取り込みます。そのときに、オーバーフローフラグを立てておくことで、最大件数を オーバーしたかどうかを判断します。
        戻り値:
        オーバーフロー(true)/正常(false)
      • getConsistencyKey

        java.lang.String getConsistencyKey()
        検索されたDBTableModelが登録時に同一かどうかを判断する為の 整合性キーを取得します。 ここでの整合性は、同一セッション(ユーザー)毎にユニークかどうかで対応します。 分散環境(複数のセッション間)での整合性は、確保できません。 整合性キー は、オブジェクト作成時刻としますが、将来変更される可能性があります。
        戻り値:
        整合性キー(オブジェクトの作成時刻)
        変更履歴:
        3.5.5.5 (2004/04/23) 新規追加
      • getColumnCount

        int getColumnCount()
        データテーブル内の列の数を返します。
        戻り値:
        モデルの列数
        変更履歴:
        3.5.3.1 (2003/10/31) インターフェースの見直しにより、追加
      • getColumnName

        java.lang.String getColumnName​(int column)
        カラム名を取得します。
        パラメータ:
        column - 最初のカラムは 0、2番目のカラムは 1、などとする。
        戻り値:
        カラム名
        変更履歴:
        3.5.3.1 (2003/10/31) インターフェースの見直しにより、追加
      • setValue

        void setValue​(int aRow,
                      java.lang.String columnName,
                      java.lang.String value)
        column に対応した 値を登録します。 column には、番号ではなく、ラベルを指定します。
        パラメータ:
        aRow - 値が変更される行
        columnName - 値が変更されるカラム名
        value - 新しい値。null も可
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • setValueAt

        void setValueAt​(java.lang.String value,
                        int aRow,
                        int aColumn)
        column および row にあるセルのオブジェクト値を設定します。 value は新しい値です。このメソッドは、tableChanged() 通知を生成します。
        パラメータ:
        value - 新しい値。null も可
        aRow - 値が変更される行
        aColumn - 値が変更される列
        変更履歴:
        3.1.0.0 (2003/03/20) 同期メソッド(synchronized付き)を非同期に変更する。, 3.5.3.1 (2003/10/31) インターフェースの見直しにより、private 化する。, 4.0.0.0 (2007/05/24) インターフェースの見直しにより、public 化する。
      • rowDelete

        void rowDelete​(int aRow)
        行を削除します。 物理削除ではなく、論理削除です。 データを取り込むことは可能です。
        パラメータ:
        aRow - 論理削除される行
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • rowDelete

        void rowDelete​(java.lang.String[] values,
                       int aRow)
        row にあるセルのオブジェクト値を置き換えて、行を削除します。 物理削除ではなく、論理削除です。 値を置き換えたデータを取り込むことが可能です。
        パラメータ:
        values - 新しい配列値。
        aRow - 論理削除される行
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • removeValue

        void removeValue​(int aRow)
        行を物理削除します。 メモリ上で編集する場合に使用しますが,一般アプリケーションからの 使用は、物理削除の為,お勧めいたしません。
        パラメータ:
        aRow - 物理削除される行
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • addValues

        void addValues​(java.lang.String[] values,
                       int aRow)
        row の下に属性値配列を追加登録します。
        パラメータ:
        values - 属性値配列
        aRow - 値が参照される行
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • addValues

        void addValues​(java.lang.String[] values,
                       int aRow,
                       boolean isWritable)
        row の下に属性値配列を追加登録します。 isWritableをfalseにした場合、編集不可能な状態で追加されます。
        パラメータ:
        values - 属性値配列
        aRow - 値が参照される行
        isWritable - 編集不可能な状態で追加するか
        変更履歴:
        4.3.1.0 (2008/09/04) interface に新規登録
      • addColumnValues

        void addColumnValues​(java.lang.String[] values)
        row あるセルの属性値配列を追加登録します。 これは,初期登録時のみに使用します。
        パラメータ:
        values - 属性値配列
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • addColumnValues

        void addColumnValues​(java.lang.String[] values,
                             java.lang.String modType,
                             boolean rw)
        row あるセルの属性値配列を追加登録します。 これは,初期登録時のみに使用します。 このメソッドでは、同時に、変更タイプ と、書込み許可を指定できます。
        パラメータ:
        values - 属性値配列
        modType - 変更タイプ(追加/変更/削除)
        rw - 書込み可能(true)/不可能(false)
        変更履歴:
        6.2.2.0 (2015/03/27) interface に変更タイプ と、書込み許可を追加
      • resetModify

        void resetModify​(int aRow)
        変更済みフラグを元に戻します。 一般には,データベースにテーブルモデルを登録するタイミングで、 変更済みフラグを元に戻します。
        パラメータ:
        aRow - 値が参照される行
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • setRowWritable

        void setRowWritable​(int aRow,
                            boolean rw)
        行が書き込み可能かどうかをセットします。 デフォルト/およびなにも設定しない場合は, DEFAULT_WRITABLE が 与えられています。 これが true の場合は,書込み許可です。(チェックボックスを表示) false の場合は,書込み不許可(チェックボックスは表示されません。)
        パラメータ:
        aRow - 値が参照される行
        rw - 書込み可能(true)/不可能(false)
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • setRowChecked

        void setRowChecked​(int aRow,
                           boolean rw)
        書き込み可能な行(rowWritable == true)のチェックボックスに対して 初期値を 選択済みにするか、非選択済みにするかを指定します。
        パラメータ:
        aRow - 値が参照される行
        rw - チェックON(true)/チェックOFF(false)
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • setDefaultRowWritable

        void setDefaultRowWritable​(boolean rw)
        行指定の書込み許可を与えます。 具体的には,チェックボックスの表示/非表示を指定します。 これが true の場合は,書込み許可です。(チェックボックスを表示) false の場合は,書込み不許可(チェックボックスは表示されません。) 行毎に書込み許可/不許可を指定する場合は,1カラム目に writable カラムを用意して true/false を指定します。 この writable カラムとの論理積により最終的にチェックボックスの 表示の ON/OFF が決まります。 なにも設定しない場合は, ViewForm.DEFAULT_WRITABLE が設定されます。
        パラメータ:
        rw - 書込み可能(true)/不可能(false)
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • setDefaultRowChecked

        void setDefaultRowChecked​(boolean rw)
        書き込み可能な行(rowWritable == true)のチェックボックスに対して 初期値を 選択済みにするか、非選択済みにするかを指定します。
        パラメータ:
        rw - 選択状態(true)/非選択状態(false)
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • setOverflow

        void setOverflow​(boolean of)
        検索結果が オーバーフローしたかどうかを設定します。 Query で検索した場合に、DB_MAX_ROW_COUNT または、Query.setMaxRowCount( int maxRowCount ) で指定された値よりも検索結果が多い場合に、DBTableModel は、先の設定値までの データを取り込みます。そのときに、オーバーフローフラグを立てておくことで、最大件数を オーバーしたかどうかを判断します。
        パラメータ:
        of - オーバーフロー(true)/正常(false)
        変更履歴:
        3.5.6.4 (2004/07/16) interface に新規登録
      • addMustType

        void addMustType​(int dbColumn,
                         java.lang.String type)
        カラム(列)にmustタイプ値を割り当てます。 この値は、columnCheck 時の nullCheck や mustAnyCheck の チェック対象カラムとして認識されます。
        パラメータ:
        dbColumn - カラムオブジェクト
        type - mustタイプ(must,mustAny)
        変更履歴:
        4.1.2.1 (2008/03/13) interface に新規登録
      • getMustArray

        java.lang.String[] getMustArray()
        mustType="must"時のカラム名を、CSV形式として返します。 この値は、columnCheck 時の nullCheck のチェック対象カラムとして 認識されます。 カラム名配列は、ソート済みです。
        戻り値:
        mustType="must"時のカラム名配列(ソート済み)
        変更履歴:
        4.1.2.1 (2008/03/13) interface に新規登録
      • getMustAnyArray

        java.lang.String[] getMustAnyArray()
        mustType="mustAny" 他のカラム名を、CSV形式として返します。 この値は、columnCheck 時の mustAnyCheck のチェック対象カラムとして 認識されます。 カラム名配列は、ソート済みです。
        戻り値:
        mustType="mustAny"時のカラム名配列(ソート済み)
        変更履歴:
        4.1.2.1 (2008/03/13) interface に新規登録