クラス SharedEntityManagerCreator

java.lang.ObjectSE
org.springframework.orm.jpa.SharedEntityManagerCreator

public abstract class SharedEntityManagerCreator extends ObjectSE
特定の EntityManagerFactoryEE の共有可能な JPA EntityManagerEE 参照を作成するためのデリゲート。

共有 EntityManager は、JPA 仕様で定義されているように、アプリケーションサーバーの JNDI 環境からフェッチされた EntityManager と同じように動作します。現在のトランザクション EntityManager がある場合は、すべての呼び出しを委譲します。それ以外の場合は、操作ごとに新しく作成された EntityManager にフォールバックします。

このような共有トランザクション EntityManager の動作定義については、JPA 仕様ドキュメントの PersistenceContextType.TRANSACTIONEE とその説明を参照してください。これは、アノテーションベースの PersistenceContext.type()EE で使用されるデフォルトでもあります。

導入:
2.0
作成者:
Juergen Hoeller, Rod Johnson, Oliver Gierke, Mark Paluch, Sam Brannen
関連事項:
  • コンストラクターの詳細

    • SharedEntityManagerCreator

      public SharedEntityManagerCreator()
  • メソッドの詳細

    • createSharedEntityManager

      public static EntityManagerEE createSharedEntityManager(EntityManagerFactoryEE emf)
      指定された EntityManagerFactory のトランザクション EntityManager プロキシを作成します。
      パラメーター:
      emf - 委譲先の EntityManagerFactory。
      戻り値:
      共有可能なトランザクション EntityManager プロキシ
    • createSharedEntityManager

      public static EntityManagerEE createSharedEntityManager(EntityManagerFactoryEE emf, @Nullable MapSE<?,?> properties)
      指定された EntityManagerFactory のトランザクション EntityManager プロキシを作成します。
      パラメーター:
      emf - 委譲先の EntityManagerFactory。
      properties - createEntityManager 呼び出しに渡されるプロパティ (null の場合があります)
      戻り値:
      共有可能なトランザクション EntityManager プロキシ
    • createSharedEntityManager

      public static EntityManagerEE createSharedEntityManager(EntityManagerFactoryEE emf, @Nullable MapSE<?,?> properties, boolean synchronizedWithTransaction)
      指定された EntityManagerFactory のトランザクション EntityManager プロキシを作成します。
      パラメーター:
      emf - 委譲先の EntityManagerFactory。
      properties - createEntityManager 呼び出しに渡されるプロパティ (null の場合があります)
      synchronizedWithTransaction - 進行中のトランザクションに自動的に参加するかどうか (JPA 2.1 SynchronizationType ルールに準拠)
      戻り値:
      共有可能なトランザクション EntityManager プロキシ
      導入:
      4.0
    • createSharedEntityManager

      public static EntityManagerEE createSharedEntityManager(EntityManagerFactoryEE emf, @Nullable MapSE<?,?> properties, ClassSE<?>... entityManagerInterfaces)
      指定された EntityManagerFactory のトランザクション EntityManager プロキシを作成します。
      パラメーター:
      emf - 必要に応じて EntityManagers を取得する EntityManagerFactory
      properties - createEntityManager 呼び出しに渡されるプロパティ (null の場合があります)
      entityManagerInterfaces - EntityManager によって実装されるインターフェース。独自のインターフェースを追加または指定できます。
      戻り値:
      共有可能なトランザクション EntityManager プロキシ
    • createSharedEntityManager

      public static EntityManagerEE createSharedEntityManager(EntityManagerFactoryEE emf, @Nullable MapSE<?,?> properties, boolean synchronizedWithTransaction, ClassSE<?>... entityManagerInterfaces)
      指定された EntityManagerFactory のトランザクション EntityManager プロキシを作成します。
      パラメーター:
      emf - 必要に応じて EntityManagers を取得する EntityManagerFactory
      properties - createEntityManager 呼び出しに渡されるプロパティ (null の場合があります)
      synchronizedWithTransaction - 進行中のトランザクションに自動的に参加するかどうか (JPA 2.1 SynchronizationType ルールに準拠)
      entityManagerInterfaces - EntityManager によって実装されるインターフェース。独自のインターフェースを追加または指定できます。
      戻り値:
      共有可能なトランザクション EntityManager プロキシ
      導入:
      4.0