クラス LocalEntityManagerFactoryBean

java.lang.ObjectSE
org.springframework.orm.jpa.AbstractEntityManagerFactoryBean
org.springframework.orm.jpa.LocalEntityManagerFactoryBean
実装されているすべてのインターフェース:
SerializableSE, Aware, BeanClassLoaderAware, BeanFactoryAware, BeanNameAware, DisposableBean, FactoryBean<jakarta.persistence.EntityManagerFactory>, InitializingBean, SmartFactoryBean<jakarta.persistence.EntityManagerFactory>, SmartInitializingSingleton, PersistenceExceptionTranslator, EntityManagerFactoryInfo

public class LocalEntityManagerFactoryBean extends AbstractEntityManagerFactoryBean
JPA 標準のスタンドアロンブートストラップ・契約に従って JPA EntityManagerFactory を作成する FactoryBean。これは、Spring アプリケーションコンテキストで共有 JPA EntityManagerFactory を設定する最も簡単な方法です。EntityManagerFactory は、依存性注入を介して JPA ベースの DAO に渡すことができます。JNDI ルックアップへの切り替え、または JPA コンテナー・契約に基づく LocalContainerEntityManagerFactoryBean 定義への切り替えは、設定の問題です。

構成設定は通常、JPA スタンドアロンブートストラップ契約に従って、クラスパスにある META-INF/persistence.xml 構成ファイルから読み取られます。セットアップの詳細については、Java Persistence API 仕様と永続プロバイダーのドキュメントを参照してください。さらに、AbstractEntityManagerFactoryBean.setJpaProperties(Properties)/AbstractEntityManagerFactoryBean.setJpaPropertyMap(Map) を介して JPA プロパティをこの FactoryBean に追加することもできます。

注意 : この FactoryBean は、JPA プロバイダーに渡すことができる構成に関して制限された構成機能を持っています。より柔軟な構成オプションが必要な場合は、代わりに Spring のより強力な LocalContainerEntityManagerFactoryBean の使用を検討してください。

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

    • LocalEntityManagerFactoryBean

      public LocalEntityManagerFactoryBean()
      LocalEntityManagerFactoryBean を作成します。

      7.0 以降、デフォルトの永続ユニット名には "default" が使用されます。

      関連事項:
    • LocalEntityManagerFactoryBean

      public LocalEntityManagerFactoryBean(StringSE persistenceUnitName)
      指定された永続性ユニットの LocalEntityManagerFactoryBean を作成します。
      パラメーター:
      persistenceUnitName - 永続性ユニットの名前
      導入:
      7.0
    • LocalEntityManagerFactoryBean

      public LocalEntityManagerFactoryBean(jakarta.persistence.PersistenceConfiguration configuration)
      指定された永続性ユニットの LocalEntityManagerFactoryBean を作成します。
      パラメーター:
      configuration - 永続ユニットの構成
      導入:
      7.0
  • メソッドの詳細

    • setPersistenceConfiguration

      public void setPersistenceConfiguration(jakarta.persistence.PersistenceConfiguration configuration)
      EntityManagerFactory の作成に使用するローカル JPA 3.2 PersistenceConfiguration を設定します。これは、persistence.xml (プロバイダ固有のクラスパススキャンを含む)を置き換える、完全なプログラムによる永続ユニット設定を公開する、HibernatePersistenceConfiguration などのプロバイダ固有のサブクラスにすることができます。

      メモ: PersistenceConfiguration には永続ユニット名が含まれているため、実質的に setPersistenceUnitName(String) メソッドをオーバーライドします。一方、ローカルに指定された JPA プロパティ ( AbstractEntityManagerFactoryBean.setJpaProperties(Properties) ) は、指定された PersistenceConfiguration インスタンスにマージされます。

      導入:
      7.0
      関連事項:
    • getPersistenceConfiguration

      public jakarta.persistence.PersistenceConfiguration getPersistenceConfiguration()
      EntityManagerFactory の作成に使用するローカル JPA 3.2 PersistenceConfiguration を設定します。まだ使用されていない場合は、設定された永続ユニット名に対応する新しいプレーン PersistenceConfiguration が作成され、返されます。
      導入:
      7.0
      関連事項:
    • setPersistenceUnitName

      public void setPersistenceUnitName(@Nullable StringSE persistenceUnitName)
      クラスからコピーされた説明: AbstractEntityManagerFactoryBean
      EntityManagerFactory 構成の名前を指定します。

      デフォルトは none で、デフォルトの EntityManagerFactory 構成を示します。あいまいな EntityManager 構成が見つかった場合、永続性プロバイダーは例外をスローします。

      オーバーライド:
      クラス AbstractEntityManagerFactoryBeansetPersistenceUnitName 
      関連事項:
      • Persistence.createEntityManagerFactory(String)
    • setDataSource

      public void setDataSource(@Nullable DataSourceSE dataSource)
      JPA 永続プロバイダーがデータベースへのアクセスに使用する JDBC DataSource を指定します。これは、JDBC 設定を persistence.xml に保持し、代わりに "jakarta.persistence.dataSource" プロパティを通じて Spring 管理の DataSource を渡すことの代替手段です。

      ここで設定すると、JPA トランザクションを JDBC アクセサーに公開するために、JDBC DataSource も JpaTransactionManager によって自動検出されます。

      導入:
      6.2
      関連事項:
    • getDataSource

      public @Nullable DataSourceSE getDataSource()
      存在する場合は、"jakarta.persistence.dataSource" プロパティから JDBC DataSource を公開します。
      次で指定:
      インターフェース EntityManagerFactoryInfogetDataSource 
      オーバーライド:
      クラス AbstractEntityManagerFactoryBeangetDataSource 
      戻り値:
      JDBC DataSource、または不明の場合は null 
      導入:
      6.2
      関連事項:
    • createNativeEntityManagerFactory

      protected jakarta.persistence.EntityManagerFactory createNativeEntityManagerFactory() throws jakarta.persistence.PersistenceException
      指定された構成の EntityManagerFactory を初期化します。
      次で指定:
      クラス AbstractEntityManagerFactoryBeancreateNativeEntityManagerFactory 
      戻り値:
      この FactoryBean によって返される EntityManagerFactory インスタンス
      例外:
      jakarta.persistence.PersistenceException - JPA 初期化エラーの場合