주문 생성처럼 여러 저장 작업이 하나의 성공·실패 묶음일 때 @Transactional 은 서비스 레이어에 두는 편이 가장 자연스럽습니다.
검증과 응답 준비까지 묶여 락 유지 시간 이 길어지고 동시성이 떨어집니다.
리포지토리마다 따로 열리면 일부 변경만 남아 비즈니스 로직의 원자성 이 깨집니다.