public class DatabaseRecordReader extends java.lang.Object implements DataReader<SqlRow>
DataReader.NoMoreRecord
Constructor and Description |
---|
DatabaseRecordReader()
DatabaseRecordReader オブジェクトを生成する。 |
Modifier and Type | Method and Description |
---|---|
void |
close(ExecutionContext ctx)
内部的にキャッシュしている各種リソースを解放する。
この実装では、レコードの読み込みに使用したステートメントオブジェクトが
null でない場合、解放する。 |
boolean |
hasNext(ExecutionContext ctx)
参照結果から次のレコードが存在するかどうかを返却する。
初回読み込み時にデータベースからレコードを取得し、キャッシュする。
結果はそのキャッシュから返却する。 |
SqlRow |
read(ExecutionContext ctx)
参照結果のレコードを1行づつ返却する。
初回読み込み時にデータベースからレコードを取得し、キャッシュする。
レコードはそのキャッシュから返却する。 参照結果に次のレコードが存在しない場合、 null を返す。 |
void |
reopen(ExecutionContext ctx)
ステートメントを再実行し、最新の情報を取得し直す。
取得した参照結果をキャッシュする。
|
DatabaseRecordReader |
setListener(DatabaseRecordListener listener)
データベースレコードリスナを設定する。
リスナに定義されたコールバック処理は、
処理対象レコードをキャッシュするためのデータベースアクセス前に実行される。
本リーダにリスナを設定することで、
処理対象レコードをデータベースから取得する前に任意の処理を実行することができる。
|
DatabaseRecordReader |
setStatement(ParameterizedSqlPStatement parameterizedSqlPStatement,
java.lang.Object condition)
テーブルを参照するSQLステートメント及び条件を設定する。
|
DatabaseRecordReader |
setStatement(SqlPStatement statement)
テーブルを参照するSQLステートメントを設定する。
|
@Published public DatabaseRecordReader()
DatabaseRecordReader
オブジェクトを生成する。public SqlRow read(ExecutionContext ctx)
null
を返す。read
in interface DataReader<SqlRow>
ctx
- 実行コンテキストpublic boolean hasNext(ExecutionContext ctx)
hasNext
in interface DataReader<SqlRow>
ctx
- 実行コンテキストtrue
public void close(ExecutionContext ctx)
null
でない場合、解放する。close
in interface DataReader<SqlRow>
ctx
- 実行コンテキストpublic void reopen(ExecutionContext ctx)
ctx
- 実行コンテキスト@Published public DatabaseRecordReader setStatement(SqlPStatement statement)
statement
- SQLステートメント@Published public DatabaseRecordReader setStatement(ParameterizedSqlPStatement parameterizedSqlPStatement, java.lang.Object condition)
parameterizedSqlPStatement
- SQLステートメントcondition
- ステートメントのINパラメータに設定する値を持つオブジェクト@Published public DatabaseRecordReader setListener(DatabaseRecordListener listener)
listener
- データベースレコードリスナ