chore : 추가 설명 주석 추가
This commit is contained in:
@@ -6,6 +6,14 @@ import javax.persistence.GeneratedValue
|
|||||||
import javax.persistence.GenerationType
|
import javax.persistence.GenerationType
|
||||||
import javax.persistence.Id
|
import javax.persistence.Id
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ```
|
||||||
|
* AbstractAggregateRoot<T> 를 이용하면 쉽게 이벤트를 구현할 수 있다.
|
||||||
|
*
|
||||||
|
* 단, 명시적으로 AggregateRootRepository<T, ID> 에서 save()가 호출되어야 이벤트가 발행된다.
|
||||||
|
* ```
|
||||||
|
* @see AbstractAggregateRoot
|
||||||
|
*/
|
||||||
@Entity
|
@Entity
|
||||||
class AggregateRootUser(
|
class AggregateRootUser(
|
||||||
@Id
|
@Id
|
||||||
|
|||||||
@@ -9,6 +9,18 @@ import org.hibernate.internal.SessionFactoryImpl
|
|||||||
import org.hibernate.persister.entity.EntityPersister
|
import org.hibernate.persister.entity.EntityPersister
|
||||||
import org.springframework.stereotype.Component
|
import org.springframework.stereotype.Component
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ```
|
||||||
|
* org.hibernate.event.spi.EventType 을 살펴보면, 다양한 이벤트 발행시점(상태)을 볼 수 있다.
|
||||||
|
*
|
||||||
|
* 다양한 이벤트 발행시점(상태)과 이벤트를 이용해서 비즈니스 로직을 처리할 수 있다.
|
||||||
|
*
|
||||||
|
* 이벤트를 심도있게, 더 잘 활용하고 싶다면 Hibernate Session Event (Hibernate Event Session) 를 공부하도록 하자.
|
||||||
|
*
|
||||||
|
* Hibernate Session 의 이벤트 인터셉트를 이용해서 다양하게 활용할 수 있다.
|
||||||
|
* ```
|
||||||
|
* @see EventType
|
||||||
|
*/
|
||||||
@Component
|
@Component
|
||||||
class DomainEvent {
|
class DomainEvent {
|
||||||
|
|
||||||
@@ -20,6 +32,9 @@ class DomainEvent {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
@Component
|
@Component
|
||||||
class CustomEventListener : PostInsertEventListener {
|
class CustomEventListener : PostInsertEventListener {
|
||||||
override fun requiresPostCommitHanding(persister: EntityPersister?): Boolean {
|
override fun requiresPostCommitHanding(persister: EntityPersister?): Boolean {
|
||||||
|
|||||||
Reference in New Issue
Block a user