Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 互換編


8.10.2 javax.persistence.EntityManagerFactoryインタフェース

ここでは,javax.persistence.EntityManagerFactoryインタフェースについてインタフェース定義と注事事項を説明します。

〈この項の構成〉

(1) インタフェース定義

package javax.persistence;
 
/**
* EntityManagerFactoryインタフェースは,
* アプリケーションがアプリケーション管理のEntityManagerを取得するために
* 使用します。
* アプリケーションがEntityManagerFactoryの使用を終了する時には,
* アプリケーションはEntityManagerFactoryをクローズする必要があります。
* EntityManagerFactoryがクローズされたあとは,
* EntityManagerFactoryから作成したすべてのEntityManagerはクローズされた
* ものとして扱われます。
*/
public interface EntityManagerFactory {
  /**
  * 新しいEntityManagerを作成します。
  * このメソッドは,呼び出されるたびに新しいEntityManagerのインスタンスを
  * 返します。
  * このメソッドが返すEntityManagerのisOpenメソッドはtrueを返します。
  * @return 新しいEntityManager
  */
  public EntityManager createEntityManager();
  
  /**
  * 指定したプロパティのマップを使用して新しいEntityManagerを作成します。
  * このメソッドは,呼び出されるたびに新しいEntityManagerのインスタンスを
  * 返します。
  * このメソッドが返すEntityManagerのisOpenメソッドはtrueを返します。
  * @param map EntityManagerのプロパティを格納したMap
  * @return 新しいEntityManager
  */
  public EntityManager createEntityManager(Map map);
  
  /**
  * ファクトリをクローズし,ファクトリが保持しているすべてのリソースを
  * 解放します。
  * ファクトリがクローズされたあとは,isOpen以外のメソッドを呼び出すと,
  * IllegalStateExceptionがスローされます。isOpenメソッドは,falseを
  * 返します。
  * EntityManagerFactoryがクローズされると,ファクトリから作成した
  * すべてのEntityManagerも,クローズされたものとして扱われます。
  */
  public void close();
  
  /**
  * ファクトリがオープンしているかどうかを返します。
  * @return ファクトリがクローズされるまではtrue
  */
  public boolean isOpen();
 
}

(2) 注意事項