openGionopenGion
5.3.0.0

org.opengion.hayabusa.db
インタフェース Query

既知の実装クラスの一覧:
AbstractQuery, Query_JDBC, Query_JDBCArrayCallable, Query_JDBCCallable, Query_JDBCErrMsg, Query_JDBCKeyEntry, Query_JDBCPLSQL, Query_JDBCPrepared, Query_JDBCTableUpdate, Query_JDBCUpdate

public interface Query

ステートメント文を execute() する事により,データベースを検索した結果を DBTableModel に 割り当てるインターフェースです。 実際にこのインターフェースを継承したクラスでは、データベース以外に フラットファイルやXMLデータなどを読み込んで DBTableModel を作成させる 様な実装クラスを作成することができます。

機能階層
データ表示, データ編集
バージョン
4.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK5.0,

メソッドの概要
 void close()
          使用した Statementオブジェクトをクロースし、Connection オブジェクトを プールに返します。
 void commit()
          コミットを行います。
 void execute()
          クエリーを実行します。
 void execute(int[] rowNo, DBTableModel table)
          引数配列付のクエリーを実行します。
 void execute(java.lang.String[] args)
          引数配列付のクエリーを実行します。
 void execute(java.lang.String[] keys, java.lang.String[] args)
          引数配列付のクエリーを実行します。
 void execute(java.lang.String names, java.lang.String dbArrayType, DBSysArg[] sysArg, DBUserArg[] userArg)
          引数配列付のクエリーを実行します。
 DBTableModel getDBTableModel()
          実行結果の DBTableModel を返します。
 int getErrorCode()
          エラーコード を取得します。
 ErrorMessage getErrorMessage()
          エラーメッセージオブジェクト を取得します。
 int getExecuteCount()
          クエリーの実行結果を返します。
 int getMaxRowCount()
          データベースの最大検索件数を返します。
 int getSkipRowCount()
          データベースの検索スキップ件数を返します。
 java.lang.String getStatement()
          ステートメント文字列を取り出します。
 void init()
          Query オブジェクトを初期化します。
 boolean isUpdate()
          アップデートフラグを取得します。
 void realClose()
          Connection オブジェクトを実際にクローズ(破棄)します。
 void rollback()
          ロールバックを行います。
 void setMaxRowCount(int maxRowCount)
          データベースの最大検索件数をセットします。
 void setResourceManager(ResourceManager resource)
          リソースマネージャーをセットします。
 void setSkipRowCount(int skipRowCount)
          データベースの検索スキップ件数をセットします。
 void setStatement(java.lang.String statement)
          ステートメント文字列をセットします。
 void setTransaction(java.lang.String connID, Transaction tran)
          Transaction オブジェクトを外部から設定します。
 

メソッドの詳細

init

void init()
Query オブジェクトを初期化します。 これは、QueryFactory のプールから取り出すときに(または戻すとき)に 初期化するのに使用します。


setStatement

void setStatement(java.lang.String statement)
ステートメント文字列をセットします。

パラメータ:
statement - String

getStatement

java.lang.String getStatement()
ステートメント文字列を取り出します。

戻り値:
statement String

execute

void execute()
クエリーを実行します。 セットされているステートメント文字列とそのタイプが合っていない場合は, エラーになります。 実行結果は、DBTableModel にセットされます。


execute

void execute(java.lang.String[] args)
引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery や { call xxxx( ?,?,? ) } などの CallableStatement の ? 部分の引数を 順番にセットしていきます。

パラメータ:
args - オブジェクトの引数配列

execute

void execute(java.lang.String[] keys,
             java.lang.String[] args)
引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の ? 部分の引数を 順番にセットしていきます。

パラメータ:
keys - オブジェクトのキー配列
args - オブジェクトの引数配列
変更履歴:
4.0.0 (2005/01/31) 新規追加

execute

void execute(java.lang.String names,
             java.lang.String dbArrayType,
             DBSysArg[] sysArg,
             DBUserArg[] userArg)
引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の ? 部分の引数を 順番にセットしていきます。

パラメータ:
names - String
dbArrayType - String
sysArg - DBSysArg[]
userArg - DBUserArg[]
変更履歴:
4.0.0 (2005/01/31) 引数をすべて受け取って実行するメソッドを標準メソッドとして追加

execute

void execute(int[] rowNo,
             DBTableModel table)
引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の [カラム名] 部分の引数を、DBTableModelから順番にセットしていきます。

パラメータ:
rowNo - 選択された行番号配列(登録する対象行)
table - DBTableModel オブジェクト(登録する元データ)

commit

void commit()
コミットを行います。


rollback

void rollback()
ロールバックを行います。


close

void close()
使用した Statementオブジェクトをクロースし、Connection オブジェクトを プールに返します。


realClose

void realClose()
Connection オブジェクトを実際にクローズ(破棄)します。 プールからも削除します。 実行時エラー等が発生したときに、このメソッドを呼び出します。


getExecuteCount

int getExecuteCount()
クエリーの実行結果を返します。 クエリーが失敗した場合や,CallableStatement の呼び出し等で実行件数が明確でない 場合は, -1 が返されます。

戻り値:
executeCount クエリーの実行件数

getDBTableModel

DBTableModel getDBTableModel()
実行結果の DBTableModel を返します。

戻り値:
DBTableModel オブジェクト

getMaxRowCount

int getMaxRowCount()
データベースの最大検索件数を返します。 データベース自体の検索は,指定されたSQLの全件を検索しますが, DBTableModelのデータとして登録する最大件数をこの値に設定します。 サーバーのメモリ資源と応答時間の確保の為です。

戻り値:
最大検索件数

setMaxRowCount

void setMaxRowCount(int maxRowCount)
データベースの最大検索件数をセットします。 データベース自体の検索は,指定されたSQLの全件を検索しますが, DBTableModelのデータとして登録する最大件数をこの値に設定します。 サーバーのメモリ資源と応答時間の確保の為です。

パラメータ:
maxRowCount - int

getSkipRowCount

int getSkipRowCount()
データベースの検索スキップ件数を返します。 データベース自体の検索は,指定されたSQLの全件を検索しますが, DBTableModelのデータとしては、スキップ件数分は登録されません。 サーバーのメモリ資源と応答時間の確保の為です。

戻り値:
最大検索件数

setSkipRowCount

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

パラメータ:
skipRowCount - int

isUpdate

boolean isUpdate()
アップデートフラグを取得します。 これは、Query で更新処理の SQL 文を実行したときに true にセットされます。 更新処理が実行:true / 検索処理のみ:false を取得できます。

戻り値:
アップデートされたかどうか( 更新処理:true / 検索処理:false )
変更履歴:
2.1.2.3 (2002/12/02) データベース更新時に、更新フラグをセットするように変更
4.0.0 (2007/07/20) メソッド名変更( getUpdateFlag() ⇒ isUpdate() )

setResourceManager

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

パラメータ:
resource - リソースマネージャー
変更履歴:
4.0.0 (2005/01/31) lang ⇒ ResourceManager へ変更

getErrorCode

int getErrorCode()
エラーコード を取得します。 エラーコード は、ErrorMessage クラスで規定されているコードです。

戻り値:
エラーコード

getErrorMessage

ErrorMessage getErrorMessage()
エラーメッセージオブジェクト を取得します。

戻り値:
エラーメッセージオブジェクト

setTransaction

void setTransaction(java.lang.String connID,
                    Transaction tran)
Transaction オブジェクトを外部から設定します。 通常は、ConnectionFactory を使用して、内部で Connection を作成しますが、 一連のトランザクション処理を実施するには、外部から Transaction オブジェクトを を与えて、そこから、Connection を取り出す必要があります。 ここでは、内部の connection が存在しない場合に限り、セットを許可します。

パラメータ:
connID - String
tran - Transaction
変更履歴:
5.1.9.0 (2010/08/01) 新規追加

openGion 5.3.0.0

Webアプリケーションフレームワーク openGion
SourceForge.JPCopyright (c) 2009 The openGion Project.