パッケージ jakarta.persistence.spi

インターフェース PersistenceUnitInfo


  • public interface PersistenceUnitInfo
    コンテナーによって実装され、EntityManagerFactory の作成時に永続性プロバイダーによって使用されるインターフェース。
    導入:
    1.0
    • メソッドのサマリー

      すべてのメソッド   インスタンスメソッド   抽象メソッド  
      修飾子と型 メソッド 説明
      voidaddTransformer​(ClassTransformer transformer)
      getClassLoader() メソッドによって返されるローダーによって読み込まれるすべての新しいクラス定義またはクラス再定義に対して呼び出されるプロバイダーによって提供されるトランスフォーマーを追加します。
      booleanexcludeUnlistedClasses()
      明示的にリストされていない永続性ユニットのルートにあるクラスを、マネージクラスのセットに含めるかどうかを返します。
      ClassLoaderSEgetClassLoader()
      プロバイダーがクラス、リソース、オープン URL をロードするために使用できる ClassLoader を返します。
      ListSE<URLSE>getJarFileUrls()
      永続性プロバイダーが永続性ユニットのマネージクラスを調べる必要がある jar ファイルまたは展開された jar ファイルディレクトリの URL のリストを返します。
      DataSourceSEgetJtaDataSource()
      永続性プロバイダーが使用する JTA 対応のデータソースを返します。
      ListSE<StringSE>getManagedClassNames()
      永続性プロバイダーがマネージクラスのセットに追加する必要があるクラスの名前のリストを返します。
      ListSE<StringSE>getMappingFileNames()
      エンティティクラスのマッピングを決定するために永続化プロバイダーがロードする必要があるマッピングファイルの名前のリストを返します。
      ClassLoaderSEgetNewTempClassLoader()
      プロバイダーがクラス、リソース、オープン URL を一時的にロードするために使用できる ClassLoader の新しいインスタンスを返します。
      DataSourceSEgetNonJtaDataSource()
      JTA トランザクションの外部でデータにアクセスするために永続性プロバイダーが使用する、JTA 非対応のデータソースを返します。
      StringSEgetPersistenceProviderClassName()
      永続化プロバイダー実装クラスの完全修飾名を返します。
      StringSEgetPersistenceUnitName()
      永続化ユニットの名前を返します。
      URLSEgetPersistenceUnitRootUrl()
      永続性ユニットのルートである jar ファイルまたはディレクトリの URL を返します。
      StringSEgetPersistenceXMLSchemaVersion()
      persistence.xml ファイルのスキーマバージョンを返します。
      PropertiesSEgetProperties()
      プロパティオブジェクトを返します。
      SharedCacheModegetSharedCacheMode()
      プロバイダーが永続性ユニットの 2 次キャッシュを使用する方法の仕様を返します。
      PersistenceUnitTransactionTypegetTransactionType()
      EntityManagerFactory によって作成されたエンティティマネージャーのトランザクション型を返します。
      ValidationModegetValidationMode()
      永続化プロバイダーが永続化ユニットに使用する検証モードを返します。
    • メソッドの詳細

      • getPersistenceUnitName

        StringSE getPersistenceUnitName()
        永続化ユニットの名前を返します。persistence.xml ファイルの name 属性に対応します。
        戻り値:
        永続性ユニットの名前
      • getPersistenceProviderClassName

        StringSE getPersistenceProviderClassName()
        永続化プロバイダー実装クラスの完全修飾名を返します。persistence.xml ファイルの provider 要素に対応します。
        戻り値:
        永続性プロバイダー実装クラスの完全修飾名
      • getTransactionType

        PersistenceUnitTransactionType getTransactionType()
        EntityManagerFactory によって作成されたエンティティマネージャーのトランザクション型を返します。トランザクション型は、persistence.xml ファイルの transaction-type 属性に対応します。
        戻り値:
        EntityManagerFactory によって作成されたエンティティマネージャーのトランザクション型
      • getJtaDataSource

        DataSourceSE getJtaDataSource()
        永続性プロバイダーが使用する JTA 対応のデータソースを返します。データソースは、persistence.xml ファイルの jta-data-source 要素に対応するか、デプロイで提供されるか、コンテナーによって提供されます。
        戻り値:
        永続性プロバイダーが使用する JTA 対応のデータソース
      • getNonJtaDataSource

        DataSourceSE getNonJtaDataSource()
        JTA トランザクションの外部でデータにアクセスするために永続性プロバイダーが使用する、JTA 非対応のデータソースを返します。データソースは、persistence.xml ファイル内の名前付き non-jta-data-source 要素に対応するか、デプロイで提供されるか、コンテナーによって提供されます。
        戻り値:
        JTA トランザクション外のデータにアクセスするために永続性プロバイダーが使用する、JTA 非対応のデータソース
      • getMappingFileNames

        ListSE<StringSE> getMappingFileNames()
        エンティティクラスのマッピングを決定するために永続化プロバイダーがロードする必要があるマッピングファイルの名前のリストを返します。マッピングファイルは、標準の XML マッピング形式で、一意の名前を付け、アプリケーションのクラスパスからリソースをロードできる必要があります。各マッピングファイル名は、persistence.xml ファイルの mapping-file 要素に対応しています。
        戻り値:
        エンティティクラスのマッピングを決定するために永続化プロバイダーがロードする必要があるマッピングファイル名のリスト
      • getJarFileUrls

        ListSE<URLSE> getJarFileUrls()
        永続性プロバイダーが永続性ユニットのマネージクラスを調べる必要がある jar ファイルまたは展開された jar ファイルディレクトリの URL のリストを返します。各 URL は、persistence.xml ファイルの jar-file 要素に対応しています。URL は次のいずれかのファイルになります。jar ファイルを参照する URL、または展開された jar ファイルを含むディレクトリを参照する URL、または jar 形式の InputStream を取得できるその他の URL。
        戻り値:
        jar ファイルまたはディレクトリを参照する URL オブジェクトのリスト
      • getPersistenceUnitRootUrl

        URLSE getPersistenceUnitRootUrl()
        永続性ユニットのルートである jar ファイルまたはディレクトリの URL を返します。(永続化ユニットが WEB-INF/classes ディレクトリをルートとする場合、これはそのディレクトリの URL になります)URL は次のいずれかのファイルになります: jar ファイルを参照する URL、または展開された jar を含むディレクトリを参照ファイル、または jar 形式の InputStream を取得できる他の URL。
        戻り値:
        jar ファイルまたはディレクトリを参照する URL
      • getManagedClassNames

        ListSE<StringSE> getManagedClassNames()
        永続性プロバイダーがマネージクラスのセットに追加する必要があるクラスの名前のリストを返します。各名前は、persistence.xml ファイル内の名前付き class 要素に対応しています。
        戻り値:
        永続化プロバイダーが管理対象クラスのセットに追加する必要のあるクラスの名前のリスト
      • excludeUnlistedClasses

        boolean excludeUnlistedClasses()
        明示的にリストされていない永続性ユニットのルートにあるクラスを、マネージクラスのセットに含めるかどうかを返します。この値は、persistence.xml ファイルの exclude-unlisted-classes 要素に対応しています。
        戻り値:
        明示的にリストされていない永続性ユニットのルートにあるクラスを、マネージクラスのセットに含めるかどうか
      • getSharedCacheMode

        SharedCacheMode getSharedCacheMode()
        プロバイダーが永続性ユニットの 2 次レベルキャッシュを使用する方法の仕様を返します。このメソッドの結果は、persistence.xml ファイルの shared-cache-mode 要素に対応します。
        戻り値:
        永続化ユニットのプロバイダーが使用する必要がある 2 次レベルのキャッシュモード
        導入:
        2.0
      • getValidationMode

        ValidationMode getValidationMode()
        永続化ユニットの永続化プロバイダーが使用する検証モードを返します。検証モードは、persistence.xml ファイルの validation-mode 要素に対応します。
        戻り値:
        永続性プロバイダーが永続性ユニットに使用する検証モード
        導入:
        2.0
      • getProperties

        PropertiesSE getProperties()
        プロパティオブジェクトを返します。各プロパティは、persistence.xml ファイルの property 要素、またはコンテナーによって設定されたプロパティに対応します。
        戻り値:
        プロパティオブジェクト
      • getPersistenceXMLSchemaVersion

        StringSE getPersistenceXMLSchemaVersion()
        persistence.xml ファイルのスキーマバージョンを返します。
        戻り値:
        persistence.xml スキーマのバージョン
        導入:
        2.0
      • getClassLoader

        ClassLoaderSE getClassLoader()
        プロバイダーがクラス、リソース、オープン URL をロードするために使用できる ClassLoader を返します。
        戻り値:
        プロバイダーがクラス、リソース、オープン URL をロードするために使用できる ClassLoader
      • addTransformer

        void addTransformer​(ClassTransformer transformer)
        getClassLoader() メソッドによって返されるローダーによって読み込まれるすべての新しいクラス定義またはクラス再定義に対して呼び出されるプロバイダーによって提供されるトランスフォーマーを追加します。トランスフォーマーは、getNewTempClassLoader() メソッドによって返される結果に影響を与えません。クラスは、その一部である永続化ユニットの数に関係なく、同じクラスローディングスコープ内で一度だけ変換されます。
        パラメーター:
        transformer - コンテナーがクラス(再)定義時に呼び出すプロバイダー提供のトランスフォーマー
      • getNewTempClassLoader

        ClassLoaderSE getNewTempClassLoader()
        プロバイダーがクラス、リソース、オープン URL を一時的にロードするために使用できる ClassLoader の新しいインスタンスを返します。このローダーのスコープとクラスパスは、getClassLoader() によって返されるローダーのものとまったく同じです。このクラスローダーによってロードされたクラスは、アプリケーションコンポーネントからは見えません。プロバイダーは、PersistenceProvider.createContainerEntityManagerFactory(jakarta.persistence.spi.PersistenceUnitInfo, java.util.Map) 呼び出しの範囲内でのみこの ClassLoader を使用できます。
        戻り値:
        現在のローダーと同じ可視性を持つ一時的な ClassLoader