クラス 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 で概説されている同じ要件を満たさなければなりません。
- 導入:
- 2.5
- 作成者:
- Sam Brannen, Juergen Hoeller
- 関連事項:
フィールドのサマリー
フィールドクラス 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
コンストラクターの詳細
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- ステートメントの実行中にエラーが発生した場合- 関連事項: