jp.go.nict.langrid.dao.hibernate
クラス HibernateDaoContext

java.lang.Object
  上位を拡張 jp.go.nict.langrid.dao.hibernate.HibernateDaoContext
すべての実装されたインタフェース:
DaoContext

public class HibernateDaoContext
extends Object
implements DaoContext

Hibernate版DaoContext。

作成者:
Takao Nakaguchi

コンストラクタの概要
HibernateDaoContext()
           
 
メソッドの概要
static void addEntityClass(List<Class<?>> additionalEntities)
           
<T> void
addEntityListener(Class<T> clazz, EntityListener<T> listener)
          エンティティリスナを登録する。
 void addTransactionListener(TransactionListener listener)
          セッションリスナを登録する。
 void beginTransaction()
          トランザクションを開始する。
 void commitTransaction()
          トランザクションをコミットする。
 void fireUpdate(Serializable id, Object entity, String[] modifiedFields)
          更新イベントを発生させる。
 long generateSequence()
          シーケンス値を生成する。
 org.hibernate.Session getSession()
          セッションを取得する。
 int getTransactionNestCount()
          トランザクションの入れ子の個数を返す。
<T> T
loadEntity(Class<T> clazz, Serializable id)
          クラスと永続化IDがわかっている際に、エンティティをロードする。
 void mergeEntity(Object entity)
          エンティティをマージする。
 void refreshEntity(Object entity)
          エンティティをリフレッシュする。
<T> void
removeEntityListener(Class<T> clazz, EntityListener<T> listener)
          エンティティリスナを削除する。
 void removeTransactionListener(TransactionListener listener)
          セッションリスナを削除する。
 void rollbackTransaction()
          トランザクションをロールバックする。
 void updateEntity(Object entity)
          エンティティをアップデートする。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

HibernateDaoContext

public HibernateDaoContext()
メソッドの詳細

addEntityListener

public <T> void addEntityListener(Class<T> clazz,
                                  EntityListener<T> listener)
インタフェース DaoContext の記述:
エンティティリスナを登録する。

定義:
インタフェース DaoContext 内の addEntityListener
型パラメータ:
T - リスナが扱うエンティティの型
パラメータ:
clazz - エンティティのクラス
listener - エンティティリスナ

removeEntityListener

public <T> void removeEntityListener(Class<T> clazz,
                                     EntityListener<T> listener)
インタフェース DaoContext の記述:
エンティティリスナを削除する。

定義:
インタフェース DaoContext 内の removeEntityListener
型パラメータ:
T - リスナが扱うエンティティの型
パラメータ:
clazz - エンティティのクラス
listener - エンティティリスナ

fireUpdate

public void fireUpdate(Serializable id,
                       Object entity,
                       String[] modifiedFields)
更新イベントを発生させる。

パラメータ:
id - ID
entity - エンティティ
modifiedFields - 更新されたフィールドの名前

addTransactionListener

public void addTransactionListener(TransactionListener listener)
インタフェース DaoContext の記述:
セッションリスナを登録する。

定義:
インタフェース DaoContext 内の addTransactionListener
パラメータ:
listener - リスナ

removeTransactionListener

public void removeTransactionListener(TransactionListener listener)
インタフェース DaoContext の記述:
セッションリスナを削除する。

定義:
インタフェース DaoContext 内の removeTransactionListener
パラメータ:
listener - リスナ

beginTransaction

public void beginTransaction()
                      throws ConnectException,
                             DaoException
インタフェース DaoContext の記述:
トランザクションを開始する。 トランザクションは全DAOにまたがる。

定義:
インタフェース DaoContext 内の beginTransaction
例外:
ConnectException - データベースに接続できない
DaoException - 処理に失敗した

commitTransaction

public void commitTransaction()
                       throws DaoException
インタフェース DaoContext の記述:
トランザクションをコミットする。 トランザクションは全DAOにまたがる。

定義:
インタフェース DaoContext 内の commitTransaction
例外:
DaoException - 処理に失敗した

rollbackTransaction

public void rollbackTransaction()
                         throws DaoException
インタフェース DaoContext の記述:
トランザクションをロールバックする。 トランザクションは全DAOにまたがる。

定義:
インタフェース DaoContext 内の rollbackTransaction
例外:
DaoException - 処理に失敗した

getTransactionNestCount

public int getTransactionNestCount()
インタフェース DaoContext の記述:
トランザクションの入れ子の個数を返す。 beginTransactionが呼ばれるたびに1つ増加、 commitTransaction又はrollbackTransactionが呼ばれるたびに1つ減少する。

定義:
インタフェース DaoContext 内の getTransactionNestCount
戻り値:
トランザクションの深さ

loadEntity

public <T> T loadEntity(Class<T> clazz,
                        Serializable id)
             throws DaoException
インタフェース DaoContext の記述:
クラスと永続化IDがわかっている際に、エンティティをロードする。

定義:
インタフェース DaoContext 内の loadEntity
型パラメータ:
T - エンティティの型
パラメータ:
clazz - エンティティのクラス
id - 永続化ID
戻り値:
オブジェクト
例外:
DaoException - 処理に失敗した

mergeEntity

public void mergeEntity(Object entity)
                 throws DaoException
インタフェース DaoContext の記述:
エンティティをマージする。 エンティティが既に存在していれば情報の更新が行われ、存在していなければ新たに作成される。 但しBLOBは対象外(Hibernateの仕様)

定義:
インタフェース DaoContext 内の mergeEntity
パラメータ:
entity - マージするエンティティ
例外:
DaoException - 処理に失敗した

refreshEntity

public void refreshEntity(Object entity)
                   throws DaoException
インタフェース DaoContext の記述:
エンティティをリフレッシュする。

定義:
インタフェース DaoContext 内の refreshEntity
パラメータ:
entity - リフレッシュするエンティティ
例外:
DaoException - 処理に失敗した

updateEntity

public void updateEntity(Object entity)
                  throws DaoException
インタフェース DaoContext の記述:
エンティティをアップデートする。 エンティティが既に存在していれば情報の更新が行われ、存在していなければエラー。

定義:
インタフェース DaoContext 内の updateEntity
パラメータ:
entity - アップデートするエンティティ
例外:
DaoException - 処理に失敗した

generateSequence

public long generateSequence()
                      throws DaoException
シーケンス値を生成する。

戻り値:
セッション
例外:
DaoException

getSession

public org.hibernate.Session getSession()
セッションを取得する。

戻り値:
セッション

addEntityClass

public static void addEntityClass(List<Class<?>> additionalEntities)
                           throws DaoException
例外:
DaoException