クラス AbstractJpaVendorAdapter

java.lang.ObjectSE
org.springframework.orm.jpa.vendor.AbstractJpaVendorAdapter
実装されたすべてのインターフェース:
JpaVendorAdapter
既知の直属サブクラス
EclipseLinkJpaVendorAdapterHibernateJpaVendorAdapter

public abstract class AbstractJpaVendorAdapter extends ObjectSE implements JpaVendorAdapter
一般的なプロパティを定義する抽象 JpaVendorAdapter 実装。具象サブクラスによってベンダー固有の JPA プロパティに変換されます。
導入:
2.0
作成者:
Juergen Hoeller, Rod Johnson
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    protected Database
    操作するターゲットデータベースを返します。
    protected StringSE
    操作するターゲットデータベースの名前を返します。
    EntityManagerFactory プロキシが実装することになっているベンダー固有の EntityManagerFactory インターフェースを返します。
    このプロバイダーの EntityManagers が実装するベンダー固有の EntityManager インターフェースを返します。
    このプロバイダーのベンダー固有の JpaDialect 実装、または存在しない場合は null を返します。
    ベンダー固有の JPA プロパティのマップを返します。通常、この JpaVendorAdapter インスタンスの設定に基づいています。
    通常はこの JpaVendorAdapter インスタンスの設定に基づいて、特定の永続性ユニットのベンダー固有の JPA プロパティのマップを返します。
    永続化プロバイダーのルートパッケージの名前を返します(例:
    protected boolean
    EntityManagerFactory が初期化された後に DDL を生成するかどうかを返します。関連するすべてのテーブルを作成 / 更新します。
    protected boolean
    SQL をログ(またはコンソール)に表示するかどうかを返します。
    void
    アクティブに使用する前にネイティブ EntityManager を後処理するためのオプションのコールバック。
    void
    アクティブに使用する前にネイティブ EntityManagerFactory を後処理するためのオプションのコールバック。
    void
    操作するターゲットデータベースを Database 列挙型の値として指定します。DB2、DERBY、H2、HANA、HSQL、INFORMIX、MYSQL、ORACLE、POSTGRESQL、SQL_SERVER、SYBASE
    void
    setDatabasePlatform(StringSE databasePlatform)
    操作するターゲットデータベースの名前を指定します。
    void
    setGenerateDdl(boolean generateDdl)
    EntityManagerFactory が初期化された後に DDL を生成するかどうかを設定し、関連するすべてのテーブルを作成 / 更新します。
    void
    setShowSql(boolean showSql)
    SQL をログ(またはコンソール)に表示するかどうかを設定します。

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

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE

    インターフェース org.springframework.orm.jpa.JpaVendorAdapter から継承されたメソッド

    getPersistenceProvider
  • コンストラクターの詳細

    • AbstractJpaVendorAdapter

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

    • setDatabase

      public void setDatabase(Database database)
      操作するターゲットデータベースを Database 列挙型の値として指定します。DB2、DERBY、H2、HANA、HSQL、INFORMIX、MYSQL、ORACLE、POSTGRESQL、SQL_SERVER、SYBASE

      注意 : この設定は、JPA プロバイダーのデフォルトのアルゴリズムをオーバーライドします。カスタムベンダープロパティは、データベースのダイアレクトを微調整する場合があります。ただし、それでも競合が発生する可能性があります: 例: この設定または Hibernate の "hibernate.dialect_resolvers" プロパティのいずれかを指定しますが、両方を指定することはできません。

    • getDatabase

      protected Database getDatabase()
      操作するターゲットデータベースを返します。
    • setDatabasePlatform

      public void setDatabasePlatform(@Nullable StringSE databasePlatform)
      操作するターゲットデータベースの名前を指定します。サポートされる値は、ベンダー依存のプラットフォーム識別子です。
    • getDatabasePlatform

      @Nullable protected StringSE getDatabasePlatform()
      操作するターゲットデータベースの名前を返します。
    • setGenerateDdl

      public void setGenerateDdl(boolean generateDdl)
      EntityManagerFactory が初期化された後に DDL を生成するかどうかを設定し、関連するすべてのテーブルを作成 / 更新します。

      このフラグの正確なセマンティクスは、基盤となる永続化プロバイダーに依存することに注意してください。さらに高度なニーズがある場合は、適切なベンダー固有の設定を "jpaProperties" として指定します。

      注: JPA の jakarta.persistence.schema-generation.database.action プロパティを設定している間は、このフラグを "true" に設定しないでください。これらの 2 つのスキーマ生成メカニズム(標準 JPA とプロバイダーネイティブ)は、Hibernate 5 などでは相互に排他的です。

      関連事項:
    • isGenerateDdl

      protected boolean isGenerateDdl()
      EntityManagerFactory が初期化された後に DDL を生成するかどうかを返します。関連するすべてのテーブルを作成 / 更新します。
    • setShowSql

      public void setShowSql(boolean showSql)
      SQL をログ(またはコンソール)に表示するかどうかを設定します。

      より具体的なログ設定については、適切なベンダー固有の設定を "jpaProperties" として指定します。

      関連事項:
    • isShowSql

      protected boolean isShowSql()
      SQL をログ(またはコンソール)に表示するかどうかを返します。
    • getPersistenceProviderRootPackage

      @Nullable public StringSE getPersistenceProviderRootPackage()
      インターフェースからコピーされた説明: JpaVendorAdapter
      永続性プロバイダーのルートパッケージの名前を返します(例: "oracle.toplink.essentials" )。一時的なクラスのオーバーライドからプロバイダークラスを除外するために使用されます。
      次で指定:
      インターフェース JpaVendorAdaptergetPersistenceProviderRootPackage 
    • getJpaPropertyMap

      public MapSE<StringSE,?> getJpaPropertyMap(PersistenceUnitInfoEE pui)
      インターフェースからコピーされた説明: JpaVendorAdapter
      通常はこの JpaVendorAdapter インスタンスの設定に基づいて、特定の永続性ユニットのベンダー固有の JPA プロパティのマップを返します。

      EntityManagerFactory Bean でさらに JPA プロパティが定義されている可能性があることに注意してください。これにより、ここで指定された個々の JPA プロパティ値がオーバーライドされる可能性があります。

      この実装は、ユニットに依存しないプロパティについて JpaVendorAdapter.getJpaPropertyMap() に委譲します。実際には、この PersistenceUnitInfo ベースのバリアントは、トランザクション型などのユニット固有の特性に実際に対応する必要がある場合にのみ実装する必要があります。

      注意 : このバリアントは、PersistenceUnitInfoEE が存在する Jakarta EE スタイルのコンテナーブートストラップの場合にのみ呼び出されます(つまり、LocalContainerEntityManagerFactoryBean)。PersistenceEE(つまり LocalEntityManagerFactoryBean)を介した単純な Java SE スタイルのブートストラップの場合、パラメーターのない JpaVendorAdapter.getJpaPropertyMap() バリアントが直接呼び出されます。

      次で指定:
      インターフェース JpaVendorAdaptergetJpaPropertyMap 
      パラメーター:
      pui - 現在の永続性ユニットの PersistenceUnitInfo
      戻り値:
      標準の JPA ブートストラップ機能で受け入れられる JPA プロパティの Map、または公開するプロパティがない場合は空の Map
      関連事項:
    • getJpaPropertyMap

      public MapSE<StringSE,?> getJpaPropertyMap()
      インターフェースからコピーされた説明: JpaVendorAdapter
      ベンダー固有の JPA プロパティのマップを返します。通常、この JpaVendorAdapter インスタンスの設定に基づいています。

      EntityManagerFactory Bean でさらに JPA プロパティが定義されている可能性があることに注意してください。これにより、ここで指定された個々の JPA プロパティ値がオーバーライドされる可能性があります。

      次で指定:
      インターフェース JpaVendorAdaptergetJpaPropertyMap 
      戻り値:
      標準の JPA ブートストラップ機能で受け入れられる JPA プロパティの Map、または公開するプロパティがない場合は空の Map
      関連事項:
    • getJpaDialect

      @Nullable public JpaDialect getJpaDialect()
      インターフェースからコピーされた説明: JpaVendorAdapter
      このプロバイダーのベンダー固有の JpaDialect 実装、または存在しない場合は null を返します。
      次で指定:
      インターフェース JpaVendorAdaptergetJpaDialect 
    • getEntityManagerFactoryInterface

      public ClassSE<? extends EntityManagerFactoryEE> getEntityManagerFactoryInterface()
      インターフェースからコピーされた説明: JpaVendorAdapter
      EntityManagerFactory プロキシが実装することになっているベンダー固有の EntityManagerFactory インターフェースを返します。

      プロバイダーが EntityManagerFactory 拡張を提供しない場合、アダプターは標準の EntityManagerFactoryEE クラスをここで返すだけです。

      次で指定:
      インターフェース JpaVendorAdaptergetEntityManagerFactoryInterface 
    • getEntityManagerInterface

      public ClassSE<? extends EntityManagerEE> getEntityManagerInterface()
      インターフェースからコピーされた説明: JpaVendorAdapter
      このプロバイダーの EntityManagers が実装するベンダー固有の EntityManager インターフェースを返します。

      プロバイダーが EntityManager 拡張を提供しない場合、アダプターは標準の EntityManagerEE クラスをここで返すだけです。

      次で指定:
      インターフェース JpaVendorAdaptergetEntityManagerInterface 
    • postProcessEntityManagerFactory

      public void postProcessEntityManagerFactory(EntityManagerFactoryEE emf)
      インターフェースからコピーされた説明: JpaVendorAdapter
      アクティブに使用する前にネイティブ EntityManagerFactory を後処理するためのオプションのコールバック。

      これは、ベンダー固有の初期化プロセスをトリガーするために使用できます。これはほとんどのプロバイダーで使用されることは想定されていませんが、ここでは一般的な拡張フックとして含まれています。

      次で指定:
      インターフェース JpaVendorAdapterpostProcessEntityManagerFactory 
    • postProcessEntityManager

      public void postProcessEntityManager(EntityManagerEE em)
      インターフェースからコピーされた説明: JpaVendorAdapter
      アクティブに使用する前にネイティブ EntityManager を後処理するためのオプションのコールバック。

      これは、ベンダー固有のパラメーターを設定するために使用できます。すべての新しい EntityManager で Hibernate フィルター。

      次で指定:
      インターフェース JpaVendorAdapterpostProcessEntityManager