クラス AbstractTransactionalTestNGSpringContextTests
java.lang.ObjectSE
org.springframework.test.context.testng.AbstractTestNGSpringContextTests
org.springframework.test.context.testng.AbstractTransactionalTestNGSpringContextTests
- 実装済みのインターフェース一覧:
Aware、ApplicationContextAware、org.testng.IHookable、org.testng.ITestNGListener
@Transactional
public abstract class AbstractTransactionalTestNGSpringContextTests
extends AbstractTestNGSpringContextTests
JDBC アクセスに便利な機能を追加する、
AbstractTestNGSpringContextTests の抽象トランザクション拡張機能。DataSourceSE Bean および PlatformTransactionManager Bean が Spring アプリケーションコンテキストで定義されることが期待されます。 このクラスは JdbcTemplate を公開し、テーブル内の行数カウント、(WHERE 句を使用する可能性があり)、テーブルから削除、テーブルのドロップ、トランザクション内で SQL スクリプトを実行する簡単な方法を提供します。
具象サブクラスは、AbstractTestNGSpringContextTests で概説されている同じ要件を満たさなければなりません。
フィールド概要
フィールドクラス org.springframework.test.context.testng.AbstractTestNGSpringContextTests から継承されたフィールド
applicationContext, loggerコンストラクター概要
コンストラクター方法の概要
修飾子と型メソッド説明protected intcountRowsInTable(StringSE tableName) 指定されたテーブルの行をカウントするための簡易メソッド。protected intcountRowsInTableWhere(StringSE tableName, StringSE whereClause) 指定されたWHERE句を使用して、指定されたテーブルの行をカウントする簡易メソッド。protected intdeleteFromTables(StringSE... names) 指定されたテーブルからすべての行を削除するための簡易メソッド。protected intdeleteFromTableWhere(StringSE tableName, StringSE whereClause, ObjectSE... args) 提供されたWHERE句を使用して、指定されたテーブルからすべての行を削除する簡易メソッド。protected voiddropTables(StringSE... names) 指定されたすべてのテーブルを削除するための便利なメソッド。protected voidexecuteSqlScript(StringSE sqlResourcePath, boolean continueOnError) 指定された SQL スクリプトを実行します。voidsetDataSource(DataSourceSE dataSource) 通常、依存性注入によって提供されるDataSourceを設定します。voidsetSqlScriptEncoding(StringSE sqlScriptEncoding) プラットフォームのエンコーディングと異なる場合は、SQL スクリプトのエンコーディングを指定します。クラス org.springframework.test.context.testng.AbstractTestNGSpringContextTests から継承されたメソッド
run, setApplicationContext, springTestContextAfterTestClass, springTestContextAfterTestMethod, springTestContextBeforeTestClass, springTestContextBeforeTestMethod, springTestContextPrepareTestInstanceクラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース org.testng.ITestNGListener から継承されたメソッド
isEnabled
フィールドの詳細
jdbcTemplate
この基本クラスが管理するJdbcTemplate。サブクラスで使用できます。- 導入:
- 3.2
コンストラクターの詳細
AbstractTransactionalTestNGSpringContextTests
public AbstractTransactionalTestNGSpringContextTests()
方法の詳細
setDataSource
通常、依存性注入によって提供されるDataSourceを設定します。このメソッドは、
jdbcTemplateインスタンス変数もインスタンス化します。setSqlScriptEncoding
プラットフォームのエンコーディングと異なる場合は、SQL スクリプトのエンコーディングを指定します。countRowsInTable
指定されたテーブルの行をカウントするための簡易メソッド。- パラメーター:
tableName- 行をカウントするテーブル名- 戻り値:
- テーブルの行数
- 関連事項:
countRowsInTableWhere
指定されたWHERE句を使用して、指定されたテーブルの行をカウントする簡易メソッド。詳細については、
JdbcTestUtils.countRowsInTableWhere(org.springframework.jdbc.core.JdbcOperations, java.lang.String, java.lang.String)の Javadoc を参照してください。- パラメーター:
tableName- 行をカウントするテーブルの名前whereClause- クエリに追加するWHERE句- 戻り値:
- 指定された
WHERE句に一致するテーブル内の行の数 - 導入:
- 3.2
- 関連事項:
deleteFromTables
指定されたテーブルからすべての行を削除するための簡易メソッド。トランザクション以外では注意して使用してください!
- パラメーター:
names- 削除するテーブルの名前- 戻り値:
- 指定されたすべてのテーブルから削除された行の総数
- 関連事項:
deleteFromTableWhere
提供されたWHERE句を使用して、指定されたテーブルからすべての行を削除する簡易メソッド。トランザクション以外では注意して使用してください!
詳細については、
JdbcTestUtils.deleteFromTableWhere(org.springframework.jdbc.core.JdbcOperations, java.lang.String, java.lang.String, java.lang.Object...)の Javadoc を参照してください。- パラメーター:
tableName- 行を削除するテーブルの名前whereClause- クエリに追加するWHERE句args- クエリにバインドする引数(対応する SQL 型を推測するためにPreparedStatementに残します)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 戻り値:
- テーブルから削除された行数
- 導入:
- 4.0
- 関連事項:
dropTables
指定されたすべてのテーブルを削除するための便利なメソッド。トランザクション以外では注意して使用してください!
- パラメーター:
names- 削除するテーブルの名前- 導入:
- 3.2
- 関連事項:
executeSqlScript
protected void executeSqlScript(StringSE sqlResourcePath, boolean continueOnError) throws DataAccessException 指定された SQL スクリプトを実行します。トランザクション以外では注意して使用してください!
スクリプトは通常、クラスパスによってロードされます。
ロールバックが予想される場合は、このメソッドを使用して DDL を実行しないでください。
- パラメーター:
sqlResourcePath- SQL スクリプトの Spring リソースパスcontinueOnError- エラーが発生した場合に例外をスローせずに続行するかどうか- 例外:
DataAccessException- ステートメントの実行中にエラーが発生した場合- 関連事項: