😎 STS3 Spring 쇼핑몰
STS3 쇼핑몰 프로젝트[27] 업로드 이미지 정보 등록 - 4(트랜잭션 적용)
트랜잭션(Transaction) 적용 Service 단계의 swanEnroll() 메서드는 내부적으로 각각 쿼리를 실행하는 Mapper 단계의 메서드를 2개 호출합니다. 그런데 앞서 작성된 코드에서 2개의 Mapper 메서드 중 하나의 메서드에서 에러가 발생한다면, 에러가 발생하지 않은 메서드의 쿼리문만 실행되고, 에러가 발생한 메서드의 쿼리문은 실행되지 않게 됩니다. 만약 해당 상황이 결제와 관련됐다고 가정한다면, 매우 심각한 문제가 될 것입니다. 이러한 문제가 발생할 수 있는 상황에서 사용할 수 있는 기능이 바로 스프링의 트랜잭션(Transaction) 기능입니다. 트랜잭션 기능을 사용하면, 내부적으로 2개 혹은 그 이상의 작업 단위로 묶인 메서드가 하나의 단위처럼 동작할 수 있게 되고, 그 결과를 ..