@Async
@Transactional 사용시 주의점(+ @Async, 같은 Class 내에서 사용하는 경우)
@Transactional을 사용하면서 마주쳤던 특이사항에 대해 정리한다.1. @Async와 함께 사용하는 경우(ThreadLocal)2. 같은 Class 내에서 사용하는 경우(AOP)로 나뉜다. @Async와 함께 사용하는 경우@Transactional이 붙은 메서드에서 다른 메서드를 호출하는데 그 메서드를 비동기로 호출해야 하는 일이 생겼다. 호출하는 메서드에 @Async를 붙여서 비동기로 호출해주려는데 Exception이 나면 Rollback 되어야 하는 @Transactional annotation이 잘 동작하지 않는다. 왤까? 간단한 코드로 확인해보자.// 예시를 위해 만든 간략한 코드라 실제로 돌아가지는 않음class TestService { private final TestReposi..