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