[Spring boot] @Transactional 이란?

·
개발 | 프로젝트/Java | Spring
1. 트랜잭션이란?트랜잭션은 데이터베이스의 상태를 변환시키는 하나의 논리적 작업 단위를 말합니다. 쇼핑몰에서 주문을 처리할 때, 주문 정보 저장, 재고 감소, 결제 처리가 모두 성공해야만 전체 주문이 완료됩니다. 이 세 가지 작업을 하나의 트랜잭션으로 묶어서 처리하면, 중간에 문제가 생겼을 때 모든 작업을 원래대로 되돌릴 수 있습니다.트랜잭션은 다음 네 가지 특성(ACID)을 가집니다.원자성(Atomicity): 트랜잭션 내의 모든 작업은 전부 성공하거나 전부 실패합니다.일관성(Consistency): 트랜잭션이 완료된 후에도 데이터베이스는 일관된 상태를 유지해야 합니다.격리성(Isolation): 동시에 실행되는 트랜잭션들은 서로 영향을 미치지 않습니다.지속성(Durability): 트랜잭션이 성공적으..