y1551463

트랜잭션

트랜잭션JPA
a month ago
·
2 min read

JPA를 공부하면서 트랜잭션에 대해서 이해가 가지 않아서 정리 (CS 지식의 부재일까..?)

트랜잭션

  • 데이터베이스에서 작업을 안전하게 처리하기 위한 독립적인 실행 단위이다

    • 하나의 논리적인 작업 단위로 묶인 작업들의 모음 (완전히 이해 되지는 않음)

  • 데이터베이스에서 하나의 작업 단위를 의미하며 ACID 원칙을 따른다

  1. Atomicity (원자성)

    • 작업은 모두 완료되거나 모두 롤백된다

  2. Consistency (일관성)

    • 작업 후에도 데이터의 무결성이 유지된다

  3. Isolation (격리성)

    • 여러 트랜잭션이 동시에 실행되더라도 서로 간섭하지 않는다

      • 자바 프로그램에서의 트랜잭션을 commit 하지 않으면 H2 콘솔 트랜잭션에서는 변경 내용을 볼 수 없음

  4. Durability (지속성)

    • commit된 데이터는 시스템 장애가 나더라도 보존된다

우선 이렇게 정리하고 추가하는 걸로