public interface EntityManagerFactory
アプリケーションがエンティティマネージャファクトリーの使用を終了したとき、および/もしくはアプリケーションのシャットダウン時に、
アプリケーションはエンティティマネージャファクトリーをクローズする必要があります。
いったんEntityManagerFactory
がクローズされると関連するエンティティマネージャーはすべてクローズ状態だとみなされます。
修飾子とタイプ | メソッドと説明 |
---|---|
<T> void |
addNamedEntityGraph(java.lang.String graphName,
EntityGraph<T> entityGraph)
EntityManagerFactoryにエンティティグラフの名前の付いたコピーを追加します。
|
void |
addNamedQuery(java.lang.String name,
Query query)
createNamedQuery やcreateNamedStoredProcedureQuery メソッドを使用してクエリーオブジェクトを作成できるように、
QueryもしくはTypedQuery、StoredProcedureQueryのクエリーを名前付きクエリーとして定義します。 |
void |
close()
ファクトリーをクローズし、確保していたすべてのリソースを解放します。
|
EntityManager |
createEntityManager()
新しいアプリケーション管理の
EntityManager を作成します。 |
EntityManager |
createEntityManager(java.util.Map map)
指定されたプロパティのMapで新しいアプリケーション管理の
EntityManager を作成します。 |
EntityManager |
createEntityManager(SynchronizationType synchronizationType)
指定されたSynchronizationTypeで新しいアプリケーション管理の
EntityManager を作成します。 |
EntityManager |
createEntityManager(SynchronizationType synchronizationType,
java.util.Map map)
指定されたSynchronizationTypeとプロパティのMapで新しいアプリケーション管理の
EntityManager を作成します。 |
Cache |
getCache()
エンティティマネージャーファクトリーに関連したキャッシュにアクセスします(L2キャッシュ)。
|
CriteriaBuilder |
getCriteriaBuilder()
CriteriaQuery オブジェクトを作るためのCriteriaBuilder のインスタンスを返します。 |
Metamodel |
getMetamodel()
永続化ユニットのメタモデルにアクセスするための
Metamodel インターフェースのインスタンスを返します。 |
PersistenceUnitUtil |
getPersistenceUnitUtil()
永続化ユニットのためのユーティリティーメソッドへのアクセスを提供するインターフェースを返します。
|
java.util.Map<java.lang.String,java.lang.Object> |
getProperties()
エンティティマネージャーファクトリーに影響のあるプロパティと関連した値を取得します。
|
boolean |
isOpen()
ファクトリーがオープンしているかどうかを示します。
|
<T> T |
unwrap(java.lang.Class<T> cls)
プロバイダ固有のAPIへのアクセスを許可するために指定された型のオブジェクトを返します。
|
EntityManager createEntityManager()
EntityManager
を作成します。
このメソッドは呼び出すたびに新しいEntityManager
インスタンスを返します。
返されたインスタンスではisOpen
メソッドはtrueを返すでしょう。java.lang.IllegalStateException
- このエンティティマネージャーファクトリーがすでにクローズされている場合EntityManager createEntityManager(java.util.Map map)
EntityManager
を作成します。
このメソッドは呼び出すたびに新しいEntityManager
インスタンスを返します。
返されたインスタンスではisOpen
メソッドはtrueを返すでしょう。map
- エンティティマネージャーのためのプロパティjava.lang.IllegalStateException
- このエンティティマネージャーファクトリーがすでにクローズされている場合EntityManager createEntityManager(SynchronizationType synchronizationType)
EntityManager
を作成します。
このメソッドは呼び出すたびに新しいEntityManager
インスタンスを返します。
返されたインスタンスではisOpen
メソッドはtrueを返すでしょう。synchronizationType
- エンティティマネージャーが何時どのように現在のJTAトランザクションと同期をとる必要があるかjava.lang.IllegalStateException
- このエンティティマネージャーファクトリーがリソースローカルなエンティティマネージャーとして構成されている場合か、
すでにクローズされている場合EntityManager createEntityManager(SynchronizationType synchronizationType, java.util.Map map)
EntityManager
を作成します。
このメソッドは呼び出すたびに新しいEntityManager
インスタンスを返します。
返されたインスタンスではisOpen
メソッドはtrueを返すでしょう。synchronizationType
- エンティティマネージャーが何時どのように現在のJTAトランザクションと同期をとる必要があるかmap
- エンティティマネージャーのためのプロパティjava.lang.IllegalStateException
- このエンティティマネージャーファクトリーがリソースローカルなエンティティマネージャーとして構成されている場合か、
すでにクローズされている場合CriteriaBuilder getCriteriaBuilder()
CriteriaQuery
オブジェクトを作るためのCriteriaBuilder
のインスタンスを返します。java.lang.IllegalStateException
- このエンティティマネージャーファクトリーがすでにクローズされている場合Metamodel getMetamodel()
Metamodel
インターフェースのインスタンスを返します。java.lang.IllegalStateException
- このエンティティマネージャーファクトリーがすでにクローズされている場合boolean isOpen()
void close()
isOpen
を除いたすべてのメソッドはIllegalStateException
を投げるようになり、
isOpen
はfalseを返すようになります。
いったんEntityManagerFactory
がクローズされると関連するエンティティマネージャーはすべてクローズ状態だとみなされます。java.lang.IllegalStateException
- このエンティティマネージャーファクトリーがすでにクローズされている場合java.util.Map<java.lang.String,java.lang.Object> getProperties()
java.lang.IllegalStateException
- このエンティティマネージャーファクトリーがすでにクローズされている場合Cache getCache()
Cache
インターフェースのインスタンス、キャッシュが使用されていない場合はnulljava.lang.IllegalStateException
- このエンティティマネージャーファクトリーがすでにクローズされている場合PersistenceUnitUtil getPersistenceUnitUtil()
PersistenceUnitUtil
インターフェースjava.lang.IllegalStateException
- このエンティティマネージャーファクトリーがすでにクローズされている場合void addNamedQuery(java.lang.String name, Query query)
createNamedQuery
やcreateNamedStoredProcedureQuery
メソッドを使用してクエリーオブジェクトを作成できるように、
QueryもしくはTypedQuery、StoredProcedureQueryのクエリーを名前付きクエリーとして定義します。
名前付きクエリーが追加されたときに有効なクエリーオブジェクトの設定(実際のパラメーターのバインドを除く)は名前付きクエリーの定義の一部として保持されます。 これには最大結果数やヒント、フラッシュモード、ロックモード、結果セットのマッピング情報、ストアドプロシージャーのパラメーターに関する情報などの構成情報が含まれます。
クエリーが実行される時に、設定できる情報をクエリーAPIによって上書きすることができます。
上書きされた情報はエンティティマネージャファクトリーに登録されている名前付きクエリーには影響しないので、
その後にcreateNamedQuery
やcreateNamedStoredProcedureQuery
メソッドを使用して作成されたクエリーオブジェクトに影響しません。
同じ名前の名前付きクエリーがメタデータまたはこのメソッドを介してすでに静的に定義されていた場合、そのクエリー定義は置き換えられます。
name
- クエリーのための名前query
- QueryもしくはTypedQuery、StoredProcedureQueryのオブジェクト<T> T unwrap(java.lang.Class<T> cls)
cls
- 返されるオブジェクトのクラス、これは通常はEntityManagerFactory
の基となる実装クラスか、その実装のインターフェースPersistenceException
- プロバイダがこの呼び出しをサポートしていない場合<T> void addNamedEntityGraph(java.lang.String graphName, EntityGraph<T> entityGraph)
graphName
- エンティティグラフの名前entityGraph
- エンティティグラフTranslated by @megascus.