본문 바로가기
반응형

rollbackFor2

@Transactional annotation spring에서 사용하는 annotation 중 하나인 이 Transactional annotation에 대해 소개하려고 한다. 사용은 메서드 상단에 설정을 해준다. 예제는 아래와 같다. @Transactional public void interal() { serviceA.transactionalTest(); serviceA.transactionalTest(); serviceA.transactionalTest(); throw new ExceptionEx("errr"); } 이미 검색을 하고 들어온 순간부터 Transactional 이라는 애가 뭘 하는 애인지는 알거라 생각하지만 간단히 설명하면 스프링 내에서 AOP 원리로 동작을 하며 Transactional 로 묶어둔 메서드가 시작부터 종료할때까지 모든.. 2023. 7. 10.
@Transactional 사용시 주의 사항1 (checked Exception) 개발을 하다가 Transactional annotation을 사용하거나 본적이 있을것이다. 해당 어노테이션은 해당 메서드 내에서 어떤 작업들이 이루어지다가 에러가 날 경우 수행했던 작업을 모두 이전으로 돌려주는, Rollback시켜주는 작업이다. 하지만 모든 에러와 예외사항에 대해서 rollback이 되는것은 아니다. 해당 포스팅을 읽기 전에 에러와 예외에 관해서 아래 참고 포스팅을 읽고 오는것을 추천한다. 글을 읽고 왔다면 이제 에러와 예외(체크, 언체크) 에 대해서 구분을 할수 있을것이다. 자바 프레임워크에서는 기본적으로 Transactional 이 checked Exception 에 대해서는 롤백시키지 않도록 설계가 되어있다. 이유는 스프링 프레임워크가 EJB 관습을 따르기 때문이다. 만약 코드에서.. 2023. 2. 20.
반응형