728x90
반응형
커밋 이전/이후에 추가적인 작업을 진행하고 싶을 때가 있다.
@Transactional
fun test() {
TransactionSynchronizationManager.registerSynchronization(object : TransactionSynchronizationManager(), TransactionSynchronization {
override fun afterCommit() {
// ... 로직
}
})
// ... db 작업 시작
}
트랜잭션 시작하는 메소드 맨 위에 위와 같이
TransactionSynchronizationManager.registerSynchronization를 사용하면 된다.
TransactionSynchronization 에서 다양한 메소드가 있으니 본인이 필요한 메소드를 오버라이딩해서 원하는대로 맞게 쓰자.
TransactionSynchronizationAdapter 는 @Deprecated 됐다.
728x90
반응형
'JVM > JPA' 카테고리의 다른 글
[Hibernate] 설정 옵션 목록 (0) | 2023.09.19 |
---|---|
[QueryDSL] return 으로 Map(집합) 받기 (2) | 2022.01.25 |
[JPA] save() isNew를 사용하여 성능개선 하기 (0) | 2021.10.02 |
[QueryDSL]like, contains 차이 (0) | 2021.05.01 |
[QueryDSL] 표현식 정리 (0) | 2021.04.18 |