jp.terasoluna.fw.batch.dao.support
クラス BatchUpdateSupportImpl

java.lang.Object
  上位を拡張 jp.terasoluna.fw.batch.dao.support.BatchUpdateSupportImpl
すべての実装されたインタフェース:
BatchUpdateSupport

public class BatchUpdateSupportImpl
extends Object
implements BatchUpdateSupport

バッチ更新サポートクラス

本クラスを利用すことでUpdateDAOのバッチ更新処理の実行をSqlID毎に整列された状態で行うことができる。
SqlIDでソートすることでプリペアードステートメントキャッシュが活用され性能向上が見込める。

関連項目:
UpdateDAO

フィールドの概要
protected  ConcurrentHashMap<String,Queue<jp.terasoluna.fw.dao.SqlHolder>> batchSqlsMap
          バッチ実行SQLを保持する.
protected  Comparator<String> comparator
          SqlIDをソートする時に使用するComparator
protected  long count
          バッチ実行SQL登録件数
protected  ReentrantReadWriteLock lock
          ロックオブジェクト
protected  jp.terasoluna.fw.dao.UpdateDAO updateDAO
          UpdateDAO
 
インタフェース jp.terasoluna.fw.batch.dao.support.BatchUpdateSupport から継承されたフィールド
ERROR_UPDATE_DAO_IS_NULL
 
コンストラクタの概要
BatchUpdateSupportImpl()
          バッジ更新サポートクラスコンストラクタ.
BatchUpdateSupportImpl(jp.terasoluna.fw.dao.UpdateDAO updateDAO)
          バッジ更新サポートクラスコンストラクタ.
BatchUpdateSupportImpl(jp.terasoluna.fw.dao.UpdateDAO updateDAO, Comparator<String> comparator)
          バッジ更新サポートクラスコンストラクタ.
 
メソッドの概要
 void addBatch(String sqlID, Object bindParams)
          バッチ実行用SQLを追加する。
 void clear()
          バッチ実行SQLリストの内容を削除する。
 int executeBatch()
          バッチ実行を行う。
 int executeBatch(jp.terasoluna.fw.dao.UpdateDAO updateDAO)
          バッチ実行を行う。
 int executeBatch(jp.terasoluna.fw.dao.UpdateDAO updateDAO, Comparator<String> comparator)
          バッチ実行を行う。
 List<jp.terasoluna.fw.dao.SqlHolder> getSqlHolderList()
          SQL-IDで整列されたSqlHolderリストを取得する。
 List<jp.terasoluna.fw.dao.SqlHolder> getSqlHolderList(Comparator<String> comparator)
          SQL-IDで整列されたSqlHolderリストを取得する。
 long size()
          バッチ実行SQLリストの登録件数を取得する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

updateDAO

protected jp.terasoluna.fw.dao.UpdateDAO updateDAO
UpdateDAO


comparator

protected Comparator<String> comparator
SqlIDをソートする時に使用するComparator


batchSqlsMap

protected final ConcurrentHashMap<String,Queue<jp.terasoluna.fw.dao.SqlHolder>> batchSqlsMap
バッチ実行SQLを保持する.


count

protected long count
バッチ実行SQL登録件数


lock

protected ReentrantReadWriteLock lock
ロックオブジェクト

コンストラクタの詳細

BatchUpdateSupportImpl

public BatchUpdateSupportImpl()
バッジ更新サポートクラスコンストラクタ.


BatchUpdateSupportImpl

public BatchUpdateSupportImpl(jp.terasoluna.fw.dao.UpdateDAO updateDAO)
バッジ更新サポートクラスコンストラクタ.

パラメータ:
updateDAO - UpdateDAO

BatchUpdateSupportImpl

public BatchUpdateSupportImpl(jp.terasoluna.fw.dao.UpdateDAO updateDAO,
                              Comparator<String> comparator)
バッジ更新サポートクラスコンストラクタ.

パラメータ:
updateDAO - UpdateDAO
comparator - Comparator<String>
メソッドの詳細

addBatch

public void addBatch(String sqlID,
                     Object bindParams)
インタフェース BatchUpdateSupport の記述:
バッチ実行用SQLを追加する。

定義:
インタフェース BatchUpdateSupport 内の addBatch
パラメータ:
sqlID - String
bindParams - Object

executeBatch

public int executeBatch()
インタフェース BatchUpdateSupport の記述:
バッチ実行を行う。

バッチ実行が成功した場合は、内部のバッチ実行SQLリストの削除を行う。

本メソッドで実行する場合は、コンストラクタ引数でUpdateDAOを渡しておくこと。
UpdateDAOがコンストラクタ引数で渡されていない場合は、-100が返却される。

定義:
インタフェース BatchUpdateSupport 内の executeBatch
戻り値:
SQLの実行結果
関連項目:
UpdateDAO

executeBatch

public int executeBatch(jp.terasoluna.fw.dao.UpdateDAO updateDAO)
インタフェース BatchUpdateSupport の記述:
バッチ実行を行う。

バッチ実行が成功した場合は、内部のバッチ実行SQLリストの削除を行う。

本メソッドで実行する場合は、コンストラクタ引数で渡されたUpdateDAOは使用されない。
UpdateDAOがnullの場合は、-100が返却される。

定義:
インタフェース BatchUpdateSupport 内の executeBatch
パラメータ:
updateDAO - UpdateDAO
戻り値:
SQLの実行結果
関連項目:
UpdateDAO

executeBatch

public int executeBatch(jp.terasoluna.fw.dao.UpdateDAO updateDAO,
                        Comparator<String> comparator)
インタフェース BatchUpdateSupport の記述:
バッチ実行を行う。

バッチ実行が成功した場合は、内部のバッチ実行SQLリストの削除を行う。

本メソッドで実行する場合は、コンストラクタ引数で渡されたUpdateDAOは使用されない。
UpdateDAOがnullの場合は、-100が返却される。

Comparatorを渡すことによりSQLの並び替え順序を制御できる。

定義:
インタフェース BatchUpdateSupport 内の executeBatch
パラメータ:
updateDAO - UpdateDAO
comparator - Comparator<String>
戻り値:
SQLの実行結果
関連項目:
UpdateDAO

clear

public void clear()
インタフェース BatchUpdateSupport の記述:
バッチ実行SQLリストの内容を削除する。

内部のバッチ実行SQLリストの削除を行う。

定義:
インタフェース BatchUpdateSupport 内の clear

size

public long size()
インタフェース BatchUpdateSupport の記述:
バッチ実行SQLリストの登録件数を取得する。

定義:
インタフェース BatchUpdateSupport 内の size
戻り値:
バッチ実行SQLリストの登録件数

getSqlHolderList

public List<jp.terasoluna.fw.dao.SqlHolder> getSqlHolderList()
インタフェース BatchUpdateSupport の記述:
SQL-IDで整列されたSqlHolderリストを取得する。

内部のバッチ実行SQLリストをSQL-ID順に整列したリストを返却する。

※本メソッドを実行しても内部のバッチ実行SQLリストは削除されない。

定義:
インタフェース BatchUpdateSupport 内の getSqlHolderList
戻り値:
SqlHolderリスト

getSqlHolderList

public List<jp.terasoluna.fw.dao.SqlHolder> getSqlHolderList(Comparator<String> comparator)
インタフェース BatchUpdateSupport の記述:
SQL-IDで整列されたSqlHolderリストを取得する。

内部のバッチ実行SQLリストをSQL-ID順に整列したリストを返却する。

※本メソッドを実行しても内部のバッチ実行SQLリストは削除されない。

Comparatorを渡すことによりSQLの並び替え順序を制御できる。

定義:
インタフェース BatchUpdateSupport 内の getSqlHolderList
パラメータ:
comparator - Comparator<String>
戻り値:
SqlHolderリスト


Copyright © 2011. All Rights Reserved.