1. Spring Transaction
- Spring Framework는 선언적 트랜잭션 관리와 프로그래밍 방식 트랜잭션 관리를 모두 지원합니다.
- 트랜잭션은 데이터베이스 작업의 논리적 단위로, ACID 속성(원자성, 일관성, 격리성, 지속성)을 보장합니다.
- Spring은 다양한 트랜잭션 관리자를 제공하여 JDBC, JPA, Hibernate 등 여러 기술과 통합할 수 있습니다.
- 기본적으로 PlatformTransactionManager 인터페이스를 통해 트랜잭션을 추상화합니다.
2. PlatformTransactionManager
2.1 PlatformTransactionManager의 필요성
- 각각의 데이터 접근 기술들은 트랜잭션을 처리하는 방식에 차이가 있습니다.
- JDBC 기술과 JPA 기술은 트랜잭션을 사용하는 코드 자체가 완전히 다릅니다.
- 아래는 두 기술의 트랜잭션 처리 방식 비교입니다.