Red Hat Training

A Red Hat training course is available for Red Hat JBoss Web Server

3.2. イベントリスナー

Hibernate Entity Manager はすべての JPA セマンティクスを実装するために Hibernate コアを拡張する必要があります。これは、Hibernate のイベントリスナーシステムにより実現されます。イベントシステムを使用する場合は、いくつかの JPA セマンティクスをオーバーライドする可能性があるので注意してください。安全な方法は、以下に示されたリストにイベントリスナーを追加することです。

表3.2 Hibernate Entity Manager デフォルトイベントリスナー

イベントリスナー
flushorg.hibernate.ejb.event.EJB3FlushEventListener
auto-flushorg.hibernate.ejb.event.EJB3AutoFlushEventListener
deleteorg.hibernate.ejb.event.EJB3DeleteEventListener
flush-entityorg.hibernate.ejb.event.EJB3FlushEntityEventListener
mergeorg.hibernate.ejb.event.EJB3MergeEventListener
createorg.hibernate.ejb.event.EJB3PersistEventListener
create-onflushorg.hibernate.ejb.event.EJB3PersistOnFlushEventListener
saveorg.hibernate.ejb.event.EJB3SaveEventListener
save-updateorg.hibernate.ejb.event.EJB3SaveOrUpdateEventListener
pre-insertorg.hibernate.secure.JACCPreInsertEventListener, org.hibernate.valitator.event.ValidateEventListener
pre-insertorg.hibernate.secure.JACCPreUpdateEventListener, org.hibernate.valitator.event.ValidateEventListener
pre-deleteorg.hibernate.secure.JACCPreDeleteEventListener
pre-loadorg.hibernate.secure.JACCPreLoadEventListener
post-deleteorg.hibernate.ejb.event.EJB3PostDeleteEventListener
post-insertorg.hibernate.ejb.event.EJB3PostInsertEventListener
post-loadorg.hibernate.ejb.event.EJB3PostLoadEventListener
post-updateorg.hibernate.ejb.event.EJB3PostUpdateEventListener
セキュリティが有効でない場合は、JACC*EventListeners が削除されることに注意してください。
イベントリスナーは、プロパティ (「構成とブートストラップ」 を参照) または Ejb3Configuration.getEventListeners() API を使用して設定できます。