クラス AbstractTransactionalJUnit4SpringContextTests
java.lang.ObjectSE
org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests
org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests
- 実装されているすべてのインターフェース:
Aware, ApplicationContextAware
@Transactional
@DeprecatedSE(since="7.0")
public abstract class AbstractTransactionalJUnit4SpringContextTests
extends AbstractJUnit4SpringContextTests
使用すべきではありません。
JDBC アクセスに便利な機能を追加する、
AbstractJUnit4SpringContextTests の抽象トランザクション拡張機能。DataSourceSE Bean および PlatformTransactionManager Bean が Spring アプリケーションコンテキストで定義されることが期待されます。 このクラスは JdbcTemplate を公開し、テーブル内の行数カウント、(WHERE 句を使用する可能性があり)、テーブルから削除、テーブルのドロップ、トランザクション内で SQL スクリプトを実行する簡単な方法を提供します。
具象サブクラスは、AbstractJUnit4SpringContextTests で概説されている同じ要件を満たさなければなりません。
このクラスは、拡張の便宜としてのみ機能します。
- テストクラスを Spring 固有のクラス階層に関連付けたくない場合は、
SpringRunner、@ContextConfiguration、@TestExecutionListenersなどを使用して独自のカスタムテストクラスを構成できます。 - このクラスを継承して
SpringRunner以外のランナーを使用する場合は、SpringClassRuleとSpringMethodRuleを使用して、@RunWith(...)で選択したランナーを指定できます。
注意 : このクラスには、JUnit 4.12 以上が必要です。
- 導入:
- 2.5
- 作成者:
- Sam Brannen, Juergen Hoeller
- 関連事項:
フィールドのサマリー
フィールドクラス AbstractJUnit4SpringContextTests から継承されたフィールド
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 スクリプトのエンコーディングを指定します。クラス AbstractJUnit4SpringContextTests から継承されたメソッド
setApplicationContext
フィールドの詳細
jdbcTemplate
使用すべきではありません。この基本クラスが管理するJdbcTemplate。サブクラスで使用できます。- 導入:
- 3.2
コンストラクターの詳細
AbstractTransactionalJUnit4SpringContextTests
public AbstractTransactionalJUnit4SpringContextTests()使用すべきではありません。
メソッドの詳細
setDataSource
使用すべきではありません。通常、依存性注入によって提供されるDataSourceを設定します。このメソッドは、
jdbcTemplateインスタンス変数もインスタンス化します。setSqlScriptEncoding
使用すべきではありません。プラットフォームのエンコーディングと異なる場合は、SQL スクリプトのエンコーディングを指定します。- 関連事項:
countRowsInTable
使用すべきではありません。指定されたテーブルの行をカウントするための簡易メソッド。- パラメーター:
tableName- 行をカウントするテーブル名- 戻り値:
- テーブルの行数
- 関連事項:
countRowsInTableWhere
使用すべきではありません。指定されたWHERE句を使用して、指定されたテーブルの行をカウントする簡易メソッド。詳細については、
JdbcTestUtils.countRowsInTableWhere(JdbcOperations, String, String)の Javadoc を参照してください。- パラメーター:
tableName- 行をカウントするテーブルの名前whereClause- クエリに追加するWHERE句- 戻り値:
- 指定された
WHERE句に一致するテーブル内の行の数 - 導入:
- 3.2
- 関連事項:
deleteFromTables
使用すべきではありません。指定されたテーブルからすべての行を削除するための簡易メソッド。トランザクション以外では注意して使用してください!
- パラメーター:
names- 削除するテーブルの名前- 戻り値:
- 指定されたすべてのテーブルから削除された行の総数
- 関連事項:
deleteFromTableWhere
使用すべきではありません。提供されたWHERE句を使用して、指定されたテーブルからすべての行を削除する簡易メソッド。トランザクション以外では注意して使用してください!
詳細については、
JdbcTestUtils.deleteFromTableWhere(JdbcOperations, String, String, 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- ステートメントの実行中にエラーが発生した場合- 関連事項:
SpringExtensionと JUnit Jupiter が優先される