クラス TestEntityManager

java.lang.ObjectSE
org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager

public class TestEntityManager extends ObjectSE
JPA テストで使用するための EntityManagerEE の代替。テストに役立つ EntityManagerEE メソッドのサブセットと、persist/flush/find などの一般的なテストタスクのヘルパーメソッドを提供します。
導入:
1.4.0
作成者:
Phillip Webb
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
    指定された EntityManagerFactoryEE の新しい TestEntityManager インスタンスを作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    永続コンテキストをクリアして、すべての管理対象エンティティを切り離します。
    void
    永続コンテキストから特定のエンティティを削除し、管理対象エンティティを切り離します。
    <E> E
    find(ClassSE<E> entityClass, ObjectSE primaryKey)
    主キーで検索します。
    void
    永続コンテキストを基礎となるデータベースに同期します。
    実際にすべての操作を実行するために使用される、基礎となる EntityManagerEE を返します。
    getId(ObjectSE entity)
    指定されたエンティティの ID を返します。
    <T> T
    getId(ObjectSE entity, ClassSE<T> idType)
    特定の型にキャストされた特定のエンティティの ID を返します。
    <E> E
    merge(E entity)
    指定されたエンティティの状態を現在の永続コンテキストにマージします。
    <E> E
    persist(E entity)
    インスタンスを管理および永続化します。
    <E> E
    persistAndFlush(E entity)
    インスタンスを管理および永続化してから、永続化コンテキストを基礎となるデータベースと同期します。
    インスタンスを管理および永続化してから、その ID を返します。
    <T> T
    persistAndGetId(ObjectSE entity, ClassSE<T> idType)
    インスタンスを管理および永続化してから、その ID を返します。
    <E> E
    インスタンスを管理および永続化して、永続化コンテキストを基礎となるデータベースと同期し、最終的に ID で永続化されたエンティティを見つけます。
    <E> E
    refresh(E entity)
    データベースのインスタンスの状態をリフレッシュし、エンティティに加えられた変更を上書きします(存在する場合)。
    void
    エンティティインスタンスを削除します。

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
  • コンストラクターの詳細

  • メソッドの詳細

    • persistAndGetId

      public ObjectSE persistAndGetId(ObjectSE entity)
      インスタンスを管理および永続化してから、その ID を返します。EntityManager.persist(Object)EE、次に getId(Object) に委譲します。

      テストでテストデータを設定するときに役立ちます。

       Object entityId = this.testEntityManager.persist(new MyEntity("Spring"));
       
      パラメーター:
      entity - ソースエンティティ
      戻り値:
      新しく永続化されたエンティティの ID
    • persistAndGetId

      public <T> T persistAndGetId(ObjectSE entity, ClassSE<T> idType)
      インスタンスを管理および永続化してから、その 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 IDfind(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

      public void remove(ObjectSE entity)
      エンティティインスタンスを削除します。EntityManager.remove(Object)EE へのデリゲート
      パラメーター:
      entity - 削除するエンティティ
    • find

      public <E> E find(ClassSE<E> entityClass, ObjectSE primaryKey)
      主キーで検索します。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

      public void detach(ObjectSE entity)
      永続コンテキストから特定のエンティティを削除し、管理対象エンティティを切り離します。EntityManager.detach(Object)EE へのデリゲート。
      パラメーター:
      entity - 切り離すエンティティ。
    • getId

      public ObjectSE getId(ObjectSE entity)
      指定されたエンティティの ID を返します。PersistenceUnitUtil.getIdentifier(Object)EE へのデリゲート。
      パラメーター:
      entity - ソースエンティティ
      戻り値:
      エンティティまたは null の ID
      関連事項:
    • getId

      public <T> T getId(ObjectSE entity, ClassSE<T> idType)
      特定の型にキャストされた特定のエンティティの ID を返します。PersistenceUnitUtil.getIdentifier(Object)EE へのデリゲート。
      型パラメーター:
      T - ID 型
      パラメーター:
      entity - ソースエンティティ
      idType - 予想される ID 型
      戻り値:
      エンティティまたは null の ID
      関連事項:
    • getEntityManager

      public final EntityManagerEE getEntityManager()
      実際にすべての操作を実行するために使用される、基礎となる EntityManagerEE を返します。
      戻り値:
      エンティティマネージャー