org.seasar.framework.unit.impl
クラス DataAccessorImpl

java.lang.Object
  上位を拡張 org.seasar.framework.unit.impl.SimpleDataAccessor
      上位を拡張 org.seasar.framework.unit.impl.DataAccessorImpl
すべての実装されたインタフェース:
DataAccessor

public class DataAccessorImpl
extends SimpleDataAccessor

EntityManagerのキャッシュに影響されないDataAccessorの実装です。

必要に応じてEntityManager.flush()を呼び出すことで、キャッシュの影響を受けずにデータの取得、更新をします。 このクラスはEntityManagerの利用の有無に関わらず使用することができます。

作成者:
taedium

フィールドの概要
protected  EntityManager em
          エンティティマネジャー
protected  TransactionManager tm
          トランザクションマネジャー
 
クラス org.seasar.framework.unit.impl.SimpleDataAccessor から継承されたフィールド
testContext
 
コンストラクタの概要
DataAccessorImpl()
           
 
メソッドの概要
 void deleteDb(DataSet dataSet)
          主キーを条件にしてデータベースのデータを削除します。
 void deleteTable(java.lang.String tableName)
          指定されたテーブルのデータをデータベースから削除します。
protected  void flushIfNecessary()
          必要ならばEntityManager.flush()}を実行します。
 DataSet readDb(DataSet dataSet)
          データベースから読み込んだデータを返します。
 DataTable readDbBySql(java.lang.String sql, java.lang.String tableName)
          SQLを指定してデータベースから読み込んだデータを返します。
 DataTable readDbByTable(java.lang.String table)
          テーブル名を指定してデータベースから読み込んだデータを返します。
 DataTable readDbByTable(java.lang.String table, java.lang.String condition)
          テーブル名と条件を指定してデータベースから読み込んだデータを返します。
 void readXlsAllReplaceDb(java.lang.String path, boolean trimString)
          指定されたExcelファイルのデータでデータベースのテーブルの全行を置換します。
 void readXlsReplaceDb(java.lang.String path, boolean trimString)
          指定されたExcelファイルのデータでデータベースのテーブルの特定行を置換します。
 void readXlsWriteDb(java.lang.String path, boolean trimString)
          指定されたExcelファイルのデータをデータベースに書き込みます。
 DataSet reload(DataSet dataSet)
          主キーを条件としてデータベースのデータを再読み込みし、新しいデータを返します。
 DataTable reload(DataTable table)
          主キーを条件としてデータベースのテーブルのデータを再読み込みし、新しいデータを返します。
 DataSet reloadOrReadDb(DataSet dataSet)
          データセットに主キーが存在する場合は主キーを条件に再読み込みし、含まれていない場合は全件を読み込みます。
 void setEntityManager(EntityManager em)
          エンティティマネジャーを設定します。
 void setTransactionManager(TransactionManager tm)
          トランザクションマネジャーを設定します。
 void writeDb(DataSet dataSet)
          データセットのデータをデータベースに書き込みます。
 
クラス org.seasar.framework.unit.impl.SimpleDataAccessor から継承されたメソッド
convertPath, getConnection, getDatabaseMetaData, getDataSource, getSqlWriter, readXls, readXls, readXlsAllReplaceDb, readXlsReplaceDb, readXlsWriteDb, setDataSource, setSqlWriter, setTestContext, writeXls
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

tm

protected TransactionManager tm
トランザクションマネジャー


em

protected EntityManager em
エンティティマネジャー

コンストラクタの詳細

DataAccessorImpl

public DataAccessorImpl()
メソッドの詳細

setTransactionManager

public void setTransactionManager(TransactionManager tm)
トランザクションマネジャーを設定します。

パラメータ:
tm - トランザクションマネジャー

setEntityManager

public void setEntityManager(EntityManager em)
エンティティマネジャーを設定します。

パラメータ:
em - エンティティマネジャー

writeDb

public void writeDb(DataSet dataSet)
インタフェース DataAccessor の記述:
データセットのデータをデータベースに書き込みます。

定義:
インタフェース DataAccessor 内の writeDb
オーバーライド:
クラス SimpleDataAccessor 内の writeDb
パラメータ:
dataSet - データセット

readDb

public DataSet readDb(DataSet dataSet)
インタフェース DataAccessor の記述:
データベースから読み込んだデータを返します。

読み込む対象とするテーブルはデータセットの情報から特定します。

定義:
インタフェース DataAccessor 内の readDb
オーバーライド:
クラス SimpleDataAccessor 内の readDb
パラメータ:
dataSet - データセット
戻り値:
新しいデータセット

readDbByTable

public DataTable readDbByTable(java.lang.String table)
インタフェース DataAccessor の記述:
テーブル名を指定してデータベースから読み込んだデータを返します。

定義:
インタフェース DataAccessor 内の readDbByTable
オーバーライド:
クラス SimpleDataAccessor 内の readDbByTable
パラメータ:
table - テーブル名
戻り値:
データテーブル

readDbByTable

public DataTable readDbByTable(java.lang.String table,
                               java.lang.String condition)
インタフェース DataAccessor の記述:
テーブル名と条件を指定してデータベースから読み込んだデータを返します。

定義:
インタフェース DataAccessor 内の readDbByTable
オーバーライド:
クラス SimpleDataAccessor 内の readDbByTable
パラメータ:
table - テーブル名
condition - 条件
戻り値:
データテーブル

readDbBySql

public DataTable readDbBySql(java.lang.String sql,
                             java.lang.String tableName)
インタフェース DataAccessor の記述:
SQLを指定してデータベースから読み込んだデータを返します。

定義:
インタフェース DataAccessor 内の readDbBySql
オーバーライド:
クラス SimpleDataAccessor 内の readDbBySql
パラメータ:
sql - SQL
tableName - テーブル名
戻り値:
データテーブル

readXlsWriteDb

public void readXlsWriteDb(java.lang.String path,
                           boolean trimString)
インタフェース DataAccessor の記述:
指定されたExcelファイルのデータをデータベースに書き込みます。

定義:
インタフェース DataAccessor 内の readXlsWriteDb
オーバーライド:
クラス SimpleDataAccessor 内の readXlsWriteDb
パラメータ:
path - Excelファイルのパス
trimString - 文字列に含まれる空白を取り除く場合true

readXlsReplaceDb

public void readXlsReplaceDb(java.lang.String path,
                             boolean trimString)
インタフェース DataAccessor の記述:
指定されたExcelファイルのデータでデータベースのテーブルの特定行を置換します。

定義:
インタフェース DataAccessor 内の readXlsReplaceDb
オーバーライド:
クラス SimpleDataAccessor 内の readXlsReplaceDb
パラメータ:
path - Excelファイルのパス
trimString - 文字列に含まれる空白を取り除く場合true

readXlsAllReplaceDb

public void readXlsAllReplaceDb(java.lang.String path,
                                boolean trimString)
インタフェース DataAccessor の記述:
指定されたExcelファイルのデータでデータベースのテーブルの全行を置換します。

定義:
インタフェース DataAccessor 内の readXlsAllReplaceDb
オーバーライド:
クラス SimpleDataAccessor 内の readXlsAllReplaceDb
パラメータ:
path - Excelファイルのパス
trimString - 文字列に含まれる空白を取り除く場合true

reload

public DataSet reload(DataSet dataSet)
インタフェース DataAccessor の記述:
主キーを条件としてデータベースのデータを再読み込みし、新しいデータを返します。

定義:
インタフェース DataAccessor 内の reload
オーバーライド:
クラス SimpleDataAccessor 内の reload
パラメータ:
dataSet - データセット
戻り値:
新しいデータセット

reload

public DataTable reload(DataTable table)
インタフェース DataAccessor の記述:
主キーを条件としてデータベースのテーブルのデータを再読み込みし、新しいデータを返します。

定義:
インタフェース DataAccessor 内の reload
オーバーライド:
クラス SimpleDataAccessor 内の reload
パラメータ:
table - データテーブル
戻り値:
新しいデータテーブル

reloadOrReadDb

public DataSet reloadOrReadDb(DataSet dataSet)
インタフェース DataAccessor の記述:
データセットに主キーが存在する場合は主キーを条件に再読み込みし、含まれていない場合は全件を読み込みます。 再読み込み、または読み込みはデータテーブルごとに行い新しいデータを返します。

定義:
インタフェース DataAccessor 内の reloadOrReadDb
オーバーライド:
クラス SimpleDataAccessor 内の reloadOrReadDb
パラメータ:
dataSet - データセット
戻り値:
新しいデータセット

deleteDb

public void deleteDb(DataSet dataSet)
インタフェース DataAccessor の記述:
主キーを条件にしてデータベースのデータを削除します。

定義:
インタフェース DataAccessor 内の deleteDb
オーバーライド:
クラス SimpleDataAccessor 内の deleteDb
パラメータ:
dataSet - データセット

deleteTable

public void deleteTable(java.lang.String tableName)
インタフェース DataAccessor の記述:
指定されたテーブルのデータをデータベースから削除します。

定義:
インタフェース DataAccessor 内の deleteTable
オーバーライド:
クラス SimpleDataAccessor 内の deleteTable
パラメータ:
tableName - テーブル名

flushIfNecessary

protected void flushIfNecessary()
必要ならばEntityManager.flush()}を実行します。



Copyright © 2004-2014 The Seasar Foundation. All Rights Reserved.