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

クラス AbstractQuery

    • コンストラクタの詳細

      • AbstractQuery

        protected AbstractQuery()
        デフォルトコンストラクター
    • メソッドの詳細

      • setConnection

        public void setConnection​(Connection conn)
        Connectionオブジェクトを外部から設定します。 通常は、Transaction と 接続先(DBID) を使用して作成した Connection を渡します。 このクラスでは、Connection の close() や、ConnectionFactory への返却なども 行いません。それらは、外部処理(通常は、Transactionオブジェクト)で行います。 Connection には、null は登録できません。
        定義:
        setConnection インタフェース内 Query
        パラメータ:
        conn - Connectionオブジェクト
      • setStatement

        public void setStatement​(String stmt)
        ステートメント文字列をセットします。
        定義:
        setStatement インタフェース内 Query
        パラメータ:
        stmt - ステートメント文字列
      • getStatement

        public String getStatement()
        ステートメント文字列を取り出します。
        定義:
        getStatement インタフェース内 Query
        戻り値:
        ステートメント文字列
      • setMergeStatement

        public void setMergeStatement​(String update,
                                      String insert,
                                      String select)
        ステートメント文字列(UPDATE,INSERT)をセットします。
        定義:
        setMergeStatement インタフェース内 Query
        パラメータ:
        update - UPDATEステートメント文字列
        insert - INSERTステートメント文字列
        select - SELECTステートメント文字列(あれば何もしない、なければINSERT処理の判定用)
      • getMergeStatement

        public String[] getMergeStatement()
        ステートメント文字列(UPDATE,INSERT,SELECT)を取り出します。
        定義:
        getMergeStatement インタフェース内 Query
        戻り値:
        ステートメント文字列の配列(UPDATE,INSERTの順番)
      • execute

        public void execute​(String... args)
        引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery や { call xxxx( ?,?,? ) } などの CallableStatement の ? 部分の引数を 順番にセットしていきます。 ※ このクラスでは実装されていません。
        定義:
        execute インタフェース内 Query
        パラメータ:
        args - オブジェクトの引数配列(可変長引数)
      • execute

        public void execute​(String[] keys,
                            String... args)
        引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の ? 部分の引数を 順番にセットしていきます。 ※ このクラスでは実装されていません。
        定義:
        execute インタフェース内 Query
        パラメータ:
        keys - オブジェクトのキー配列
        args - オブジェクトの引数配列(可変長引数)
      • execute

        public void execute​(String names,
                            String dbArrayType,
                            DBSysArg[] sysArg,
                            DBUserArg[] userArg)
        引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の ? 部分の引数を 順番にセットしていきます。 ※ このクラスでは実装されていません。
        定義:
        execute インタフェース内 Query
        パラメータ:
        names - カラム名(CSV形式)
        dbArrayType - アレイタイプ名称
        sysArg - DBSysArg配列
        userArg - DBUserArg配列
      • execute

        public void execute​(int[] rowNo,
                            DBTableModel table)
        引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の [カラム名] 部分の引数を、DBTableModelから順番にセットしていきます。 ※ このクラスでは実装されていません。
        定義:
        execute インタフェース内 Query
        パラメータ:
        rowNo - 選択された行番号配列(登録する対象行)
        table - DBTableModelオブジェクト(登録する元データ)
      • setExecuteCount

        protected void setExecuteCount​(int executeCount)
        クエリーの実行結果件数をセットします。 初期値は -1 です。(クエリーが失敗した場合や,CallableStatement の呼び出し等で 実行件数が明確でない場合の戻り値)。
        パラメータ:
        executeCount - 実行結果件数
      • getExecuteCount

        public int getExecuteCount()
        クエリーの実行結果を返します。 クエリーが失敗した場合や,CallableStatement の呼び出し等で実行件数が明確でない 場合は, -1 が返されます。
        定義:
        getExecuteCount インタフェース内 Query
        戻り値:
        実行結果件数
      • setDBTableModel

        protected void setDBTableModel​(DBTableModel table)
        DBTableModel をセットします。 なお、検索系実行前に setDBTableModel() でテーブルをセットしていたとしても そのオブジェクトは破棄されて、新しい DBTableModel が生成されます。
        パラメータ:
        table - DBTableModelオブジェクト
      • getMaxRowCount

        public int getMaxRowCount()
        データベースの最大検索件数を返します。 (初期値:DB_MAX_ROW_COUNT[=])。 データベース自体の検索は,指定されたSQLの全件を検索しますが, DBTableModelのデータとして登録する最大件数をこの値に設定します。0は無制限です。 サーバーのメモリ資源と応答時間の確保の為です。
        定義:
        getMaxRowCount インタフェース内 Query
        戻り値:
        最大検索件数
      • setMaxRowCount

        public void setMaxRowCount​(int maxRowCount)
        データベースの最大検索件数をセットします。 データベース自体の検索は,指定されたSQLの全件を検索しますが, DBTableModelのデータとして登録する最大件数をこの値に設定します。 サーバーのメモリ資源と応答時間の確保の為です。 ゼロ、または、負の値を設定すると、無制限(Integer.MAX_VALUE)になります。
        定義:
        setMaxRowCount インタフェース内 Query
        パラメータ:
        maxRowCount - 最大検索件数
      • getSkipRowCount

        public int getSkipRowCount()
        データベースの検索スキップ件数を返します。 データベース自体の検索は,指定されたSQLの全件を検索しますが, DBTableModelのデータとしては、スキップ件数分は登録されません。 サーバーのメモリ資源と応答時間の確保の為です。
        定義:
        getSkipRowCount インタフェース内 Query
        戻り値:
        最大検索件数
      • setSkipRowCount

        public void setSkipRowCount​(int skipRowCount)
        データベースの検索スキップ件数をセットします。 データベース自体の検索は,指定されたSQLの全件を検索しますが, DBTableModelのデータとしては、スキップ件数分は登録されません。 サーバーのメモリ資源と応答時間の確保の為です。
        定義:
        setSkipRowCount インタフェース内 Query
        パラメータ:
        skipRowCount - スキップ件数
      • setUpdateFlag

        protected void setUpdateFlag​(boolean up)
        アップデートフラグをセットします。 これは、Query で更新処理の SQL 文を実行したときにセットされます。 更新処理が実行:true / 検索処理のみ:false をセットします。 このメソッドを呼び出さない場合は、デフォルト:true です。
        パラメータ:
        up - アップデートされたかどうか[true:更新処理/false:検索処理]
      • isUpdate

        public boolean isUpdate()
        アップデートフラグを取得します。 これは、Query で更新処理の SQL 文を実行したときに true にセットされます。 更新処理が実行:true / 検索処理のみ:false を取得できます。
        定義:
        isUpdate インタフェース内 Query
        戻り値:
        アップデートされたかどうか[true:更新処理/false:検索処理]
      • setResourceManager

        public void setResourceManager​(ResourceManager resource)
        リソースマネージャーをセットします。 これは、言語(ロケール)に応じた DBColumn をあらかじめ設定しておく為に 必要です。 リソースマネージャーが設定されていない、または、所定のキーの DBColumn が リソースに存在しない場合は、内部で DBColumn オブジェクトを作成します。
        定義:
        setResourceManager インタフェース内 Query
        パラメータ:
        resource - リソースマネージャー
      • getErrorCode

        public int getErrorCode()
        エラーコード を取得します。 エラーコード は、ErrorMessage クラスで規定されているコードです。
        定義:
        getErrorCode インタフェース内 Query
        戻り値:
        エラーコード
      • setErrorCode

        protected void setErrorCode​(int cd)
        エラーコード をセットします。 エラーコード は、ErrorMessage クラスで規定されているコードです。
        パラメータ:
        cd - エラーコード
      • setErrorMessage

        protected void setErrorMessage​(ErrorMessage em)
        エラーメッセージオブジェクト をセットします。
        パラメータ:
        em - エラーメッセージオブジェクト
      • setEditConfig

        public void setEditConfig​(DBEditConfig config)
        編集設定オブジェクトをセットします。
        定義:
        setEditConfig インタフェース内 Query
        パラメータ:
        config - 編集設定オブジェクト
      • getEditConfig

        protected DBEditConfig getEditConfig()
        編集設定オブジェクトを取得します。
        戻り値:
        編集設定オブジェクト
      • createTableModel

        protected void createTableModel​(ResultSet resultSet)
        ResultSet を DBTableModelに割り当てます。 毎回,検索毎に,DBTableModel にコピーするイメージです。 ResulSet 以外のオブジェクトから,DBTableModelを作成する場合は, このメソッドをオーバーライドします。 このメソッドは, execute からのみ,呼び出されます。 それ以外からは呼出し出来ません。
        パラメータ:
        resultSet - ResultSetオブジェクト
      • getConnection

        protected Connection getConnection()
        ConnectionFactory.connection( String ); を利用して,Connection オブジェクトを取り出します。 コネクションプールが一杯の場合は、即エラーになります。
        戻り値:
        コネクション
      • useParameterMetaData

        protected boolean useParameterMetaData()
        この接続が、PreparedStatement#getParameterMetaData() を使用するかどうかを判定します。 ConnectionFactory#useParameterMetaData(String) の結果を返します。(postgreSQL対応) ※ 暫定処理です。もっと、良い方法を考える必要があります。
        戻り値:
        使用する場合:true / その他:false
        関連項目:
        ConnectionFactory.useParameterMetaData(String)
      • toString

        public String toString()
        オブジェクトの識別子として,最後のクエリーを返します。
        オーバーライド:
        toString クラス内 Object
        戻り値:
        最後のクエリー