パッケージ jakarta.persistence.spi
インターフェース PersistenceProvider
public interface PersistenceProvider
永続化プロバイダーによって実装されるインターフェース。
これは、Jakarta EE 環境のコンテナーおよび Java SE 環境の Persistence クラスによって呼び出され、EntityManagerFactory を作成したり、スキーマ生成を発生させたりします。
- 導入:
- 1.0
方法の概要
修飾子と型メソッド説明createContainerEntityManagerFactory(PersistenceUnitInfo info, MapSE<?, ?> map) EntityManagerFactoryが作成されるときにコンテナーによって呼び出されます。createEntityManagerFactory(PersistenceConfiguration configuration) EntityManagerFactoryを作成するときにPersistenceクラスによって呼び出されます。createEntityManagerFactory(StringSE emName, MapSE<?, ?> map) EntityManagerFactoryを作成するときにPersistenceクラスによって呼び出されます。voidgenerateSchema(PersistenceUnitInfo info, MapSE<?, ?> map) 提供されたプロパティによって決定されるように、データベーススキーマやテーブルを作成し、DDL スクリプトを作成します。booleangenerateSchema(StringSE persistenceUnitName, MapSE<?, ?> map) 提供されたプロパティによって決定されるように、データベーススキーマやテーブルを作成し、DDL スクリプトを作成します。永続化プロバイダーによって実装されたユーティリティインターフェースを返します。
メソッドの詳細
createEntityManagerFactory
EntityManagerFactoryを作成するときにPersistenceクラスによって呼び出されます。- パラメーター:
emName- 永続性ユニットの名前map- 永続性プロバイダーが使用するプロパティのマップ。これらのプロパティを使用して、persistence.xmlファイル内の対応する要素の値をオーバーライドしたり、persistence.xmlで指定されていないプロパティの値を指定したりできます(プロパティが指定されていない場合は null になる場合があります)。- 戻り値:
- 永続性ユニットの EntityManagerFactory、またはプロバイダーが適切なプロバイダーでない場合は null
- 関連事項:
createEntityManagerFactory
EntityManagerFactoryを作成するときにPersistenceクラスによって呼び出されます。- パラメーター:
configuration- 永続化ユニットの構成- 戻り値:
- 永続性ユニットの EntityManagerFactory、またはプロバイダーが適切なプロバイダーでない場合は null
- 例外:
IllegalStateExceptionSE- 必要な構成が欠落している場合- 導入:
- 3.2
- 関連事項:
createContainerEntityManagerFactory
EntityManagerFactoryが作成されるときにコンテナーによって呼び出されます。- パラメーター:
info- 永続化プロバイダーが使用するメタデータmap- 永続化プロバイダーによって使用される統合レベルのプロパティのマップ (プロパティが指定されていない場合は null になる可能性があります)。これらのプロパティには、スキーマ生成を制御するプロパティが含まれる場合があります。Bean 検証プロバイダーがクラスパスに存在する場合、コンテナーはキー"jakarta.persistence.validation.factory"を持つマップ内のValidatorFactoryインスタンスを渡す必要があります。含まれているアーカイブが Bean アーカイブの場合、コンテナーはキー"jakarta.persistence.bean.manager"を持つマップ内のBeanManagerインスタンスを渡す必要があります。- 戻り値:
- メタデータで指定された永続化ユニットの場合は
EntityManagerFactory
generateSchema
提供されたプロパティによって決定されるように、データベーススキーマやテーブルを作成し、DDL スクリプトを作成します。エンティティマネージャーファクトリの作成とは別のフェーズとしてスキーマの生成が行われるときにコンテナーによって呼び出されます。
- パラメーター:
info- 永続化プロバイダーが使用するメタデータmap- スキーマ生成のプロパティ。これらには、プロバイダー固有のプロパティも含まれる場合があります。- 例外:
PersistenceException- 不十分な、または一貫性のない構成情報が提供された場合、スキーマ生成に失敗した場合- 導入:
- 2.1
generateSchema
提供されたプロパティによって決定されるように、データベーススキーマやテーブルを作成し、DDL スクリプトを作成します。エンティティマネージャーファクトリの作成とは別のフェーズとしてスキーマの生成が行われる場合に、
Persistenceクラスによって呼び出されます。- パラメーター:
persistenceUnitName- 永続性ユニットの名前map- スキーマ生成のプロパティ。これらには、プロバイダー固有のプロパティが含まれる場合もあります。これらのプロパティの値は、他の場所で構成されている可能性のある値を上書きします。- 戻り値:
- スキーマが生成された場合は true、それ以外の場合は false
- 例外:
PersistenceException- 提供された構成情報が不十分または矛盾している場合、またはスキーマの生成に失敗した場合- 導入:
- 2.1
getProviderUtil
ProviderUtil getProviderUtil()永続化プロバイダーによって実装されたユーティリティインターフェースを返します。- 戻り値:
ProviderUtilのインスタンス- 導入:
- 2.0