[Spring] transaction 트랜잭션
트랜잭션이란 더이상 나눌 수 없는 가장 작은 작업 단위 이다. 트랜잭션의 특성으로는 ACID가 있다. 원자성(Atomicity) 하나의 작업단위는 그 결과가 성공 또는 실패할 경우 관련된 동장은 모두 동일한 결과가 나온다. 작업 중 하나라도 실패한다면 관련된 트랜잭션 내에서 처리한 동작들도 모두 처음 상태로 돌아간다. 일관성(Consistency) 트랜잭션이 성공적으로 처리되면 데이터베이스의 관련된 모든 데이터는 일관성을 유지해야 한다. 고립성(Isolation) 트랜잭션은 독립적으로 처리되며, 처리되는 중간에 외부에서의 간섭은 없어야 한다. 서로 다른 트랜잭션이 동일한 데이터에 동시에 접근할 경우 적절한 동시 접근 제어를 해야 한다. 지속성(Durability) 트랜잭션이 성공적으로 처리되면 그 결과는..