クラス TestEntityManager
java.lang.ObjectSE
org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager
JPA テストで使用するための
EntityManager
EE の代替。テストに役立つ EntityManager
EE メソッドのサブセットと、persist/flush/find
などの一般的なテストタスクのヘルパーメソッドを提供します。- 導入:
- 1.4.0
- 作成者:
- Phillip Webb
コンストラクターのサマリー
コンストラクター説明TestEntityManager
(EntityManagerFactoryEE entityManagerFactory) 指定されたEntityManagerFactory
EE の新しいTestEntityManager
インスタンスを作成します。メソッドのサマリー
修飾子と型メソッド説明void
clear()
永続コンテキストをクリアして、すべての管理対象エンティティを切り離します。void
永続コンテキストから特定のエンティティを削除し、管理対象エンティティを切り離します。<E> E
主キーで検索します。void
flush()
永続コンテキストを基礎となるデータベースに同期します。final EntityManagerEE
実際にすべての操作を実行するために使用される、基礎となるEntityManager
EE を返します。指定されたエンティティの ID を返します。<T> T
特定の型にキャストされた特定のエンティティの ID を返します。<E> E
merge
(E entity) 指定されたエンティティの状態を現在の永続コンテキストにマージします。<E> E
persist
(E entity) インスタンスを管理および永続化します。<E> E
persistAndFlush
(E entity) インスタンスを管理および永続化してから、永続化コンテキストを基礎となるデータベースと同期します。persistAndGetId
(ObjectSE entity) インスタンスを管理および永続化してから、その ID を返します。<T> T
persistAndGetId
(ObjectSE entity, ClassSE<T> idType) インスタンスを管理および永続化してから、その ID を返します。<E> E
persistFlushFind
(E entity) インスタンスを管理および永続化して、永続化コンテキストを基礎となるデータベースと同期し、最終的に ID で永続化されたエンティティを見つけます。<E> E
refresh
(E entity) データベースのインスタンスの状態をリフレッシュし、エンティティに加えられた変更を上書きします(存在する場合)。void
エンティティインスタンスを削除します。
コンストラクターの詳細
TestEntityManager
指定されたEntityManagerFactory
EE の新しいTestEntityManager
インスタンスを作成します。- パラメーター:
entityManagerFactory
- ソースエンティティマネージャーファクトリ
メソッドの詳細
persistAndGetId
インスタンスを管理および永続化してから、その ID を返します。EntityManager.persist(Object)
EE、次にgetId(Object)
に委譲します。テストでテストデータを設定するときに役立ちます。
Object entityId = this.testEntityManager.persist(new MyEntity("Spring"));
- パラメーター:
entity
- ソースエンティティ- 戻り値:
- 新しく永続化されたエンティティの ID
persistAndGetId
インスタンスを管理および永続化してから、その ID を返します。EntityManager.persist(Object)
EE、次にgetId(Object, Class)
に委譲します。テストでテストデータを設定するときに役立ちます。
Long entityId = this.testEntityManager.persist(new MyEntity("Spring"), Long.class);
- 型パラメーター:
T
- ID 型- パラメーター:
entity
- ソースエンティティidType
- ID 型- 戻り値:
- 新しく永続化されたエンティティの ID
persist
public <E> E persist(E entity) インスタンスを管理および永続化します。EntityManager.persist(Object)
EE へのデリゲートは、元のソースエンティティを返します。テストでテストデータを設定するときに役立ちます。
MyEntity entity = this.testEntityManager.persist(new MyEntity("Spring"));
- 型パラメーター:
E
- エンティティ型- パラメーター:
entity
- 永続化するエンティティ- 戻り値:
- 永続化されたエンティティ
persistFlushFind
public <E> E persistFlushFind(E entity) インスタンスを管理および永続化して、永続化コンテキストを基礎となるデータベースと同期し、最終的に ID で永続化されたエンティティを見つけます。persistAndFlush(Object)
に、次にentity ID
でfind(Class, Object)
に委譲します。エンティティデータが実際に基になるデータベースに正しく書き込まれ、読み取られることを保証するときに役立ちます。
- 型パラメーター:
E
- エンティティ型- パラメーター:
entity
- 永続化するエンティティ- 戻り値:
- 永続化されたエンティティの ID を使用して見つかったエンティティ
persistAndFlush
public <E> E persistAndFlush(E entity) インスタンスを管理および永続化してから、永続化コンテキストを基礎となるデータベースと同期します。EntityManager.persist(Object)
EE、次にflush()
に委譲し、最終的に元のソースエンティティを返します。テストでテストデータを設定するときに役立ちます。
MyEntity entity = this.testEntityManager.persistAndFlush(new MyEntity("Spring"));
- 型パラメーター:
E
- エンティティ型- パラメーター:
entity
- 永続化するエンティティ- 戻り値:
- 永続化されたエンティティ
merge
public <E> E merge(E entity) 指定されたエンティティの状態を現在の永続コンテキストにマージします。EntityManager.merge(Object)
EE へのデリゲート- 型パラメーター:
E
- エンティティ型- パラメーター:
entity
- マージするエンティティ- 戻り値:
- マージされたエンティティ
remove
エンティティインスタンスを削除します。EntityManager.remove(Object)
EE へのデリゲート- パラメーター:
entity
- 削除するエンティティ
find
主キーで検索します。EntityManager.find(Class, Object)
EE へのデリゲート。- 型パラメーター:
E
- エンティティ型- パラメーター:
entityClass
- エンティティクラスprimaryKey
- エンティティの主キー- 戻り値:
- 見つかったエンティティまたはエンティティが存在しない場合は
null
- 関連事項:
flush
public void flush()永続コンテキストを基礎となるデータベースに同期します。EntityManager.flush()
EE へのデリゲート。refresh
public <E> E refresh(E entity) データベースのインスタンスの状態をリフレッシュし、エンティティに加えられた変更を上書きします(存在する場合)。EntityManager.refresh(Object)
EE へのデリゲート。- 型パラメーター:
E
- エンティティ型- パラメーター:
entity
- リフレッシュするエンティティ- 戻り値:
- リフレッシュされたエンティティ
clear
public void clear()永続コンテキストをクリアして、すべての管理対象エンティティを切り離します。EntityManager.clear()
EE へのデリゲートdetach
永続コンテキストから特定のエンティティを削除し、管理対象エンティティを切り離します。EntityManager.detach(Object)
EE へのデリゲート。- パラメーター:
entity
- 切り離すエンティティ。
getId
指定されたエンティティの ID を返します。PersistenceUnitUtil.getIdentifier(Object)
EE へのデリゲート。- パラメーター:
entity
- ソースエンティティ- 戻り値:
- エンティティまたは
null
の ID - 関連事項:
getId
特定の型にキャストされた特定のエンティティの ID を返します。PersistenceUnitUtil.getIdentifier(Object)
EE へのデリゲート。- 型パラメーター:
T
- ID 型- パラメーター:
entity
- ソースエンティティidType
- 予想される ID 型- 戻り値:
- エンティティまたは
null
の ID - 関連事項:
getEntityManager
実際にすべての操作を実行するために使用される、基礎となるEntityManager
EE を返します。- 戻り値:
- エンティティマネージャー