EntityManagerとUnitOfWorkは、登録されたエンティティの存続期間中に下記のイベントをトリガします。
preRemove
preRemoveイベントは、エンティティのそれぞれのEntityManager削除操作が実行される前に、特定のエンティティに対して発生します。DQL DELETEステートメントでは呼び出されません。
postRemove
postRemoveイベントは、エンティティが削除された後にエンティティに対して発生します。データベースの削除操作の後に呼び出されます。DQL DELETEステートメントでは呼び出されません。
prePersist
prePersistイベントは、そのエンティティのそれぞれのEntityManager持続操作が実行される前に、特定のエンティティに対して発生します。このイベントは、エンティティの初期持続時にのみトリガされる(つまり、将来の更新でトリガされない)ことに注意する必要があり ます。
postPersist
エンティティが永続化された後に、エンティティのpostPersistイベントが発生します。これは、データベース挿入操作の後に呼び出されます。生成された主キー値は、postPersistイベントで使用できます。
preUpdate
preUpdateイベントは、エンティティデータへのデータベース更新操作の前に発生します。DQL UPDATEステートメントには呼び出されません。また、計算されたチェンジセットが空の場合もありません。
postUpdate
postUpdateイベントは、エンティティデータに対するデータベース更新操作の後に発生します。DQLのUPDATEステートメントには呼び出されません。
postLoad
postLoadイベントは、エンティティがデータベースから現在のEntityManagerにロードされた後、またはリフレッシュ操作が適用された後にエンティティに対して発生します。
loadClassMetadata
loadClassMetadataイベントは、クラスのマッピング・メタデータがマッピング・ソース(annotations / xml / yaml)からロードされた後に発生します。このイベントはライフサイクルコールバックではありません。
onClassMetadataNotFound
要求された特定のクラス名のクラス・メタデータのロードに失敗しました。指定されたイベントを操作するargsインスタンスは、実際のメタデータが存在しない場合や見つかった場合でも代替メタデータを提供することを可能にします。このイベントはライフサイクルコールバックではありません。
preFlush
preFlushイベントは、フラッシュ操作の最初の時点で発生します。
onFlush
onFlushイベントは、すべての管理対象エンティティの変更セットが計算された後に発生します。このイベントはライフサイクルコールバックではありません。
postFlush
postFlushイベントは、フラッシュ操作の終了時に発生します。このイベントはライフサイクルコールバックではありません。
onClear
onClearイベントは、エンティティへのすべての参照が作業ユニットから削除された後で、EntityManager#clear()操作が呼び出されたときに発生します。このイベントはライフサイクルコールバックではありません。