728x90
반응형
SMALL

트랜잭션 3

7_3.롤백 전략과 커밋 관리

학습내용롤백과 커밋트랜잭션 롤백 전략부분커밋 (entityManager)학습정리1.롤백과 커밋커밋트랜잭션 작업이 성공적으로 완료 된 경우 변경 사항을 영구적으로 저장원리 예제코드 @Transactional public void sellProduct(Long productId, int quantity) { // 상품 조회: 존재하지 않으면 예외 발생 Product product = productRepository.findById(productId) .orElseThrow(() -> new ServiceException(ServiceExceptionCode.NOT_FOUND_PRODUCT)); // 재고 차감: 엔티티 내 reduceStock 메서드를 활용 product..

TIL 2025.02.07

7_2.트랜잭션 전파 옵션과 DB Read/Write 분리

학습내용트랜잭션 전파 옵션DB Read/Write 분리학습정리1. 트랜잭션 전파 옵션스프링 프레임워크에서 트랜션이 메서드 간에 어떻게 이어져서(전파) 실행 되는지를 결정하는 설정옵션은 하나의 트랜잭션 경계 내에서 여러 비즈니스 로직을 실행할 때, 호출하는 메서드와 호출되는 메서드가 동일한 트랜잭션을 공유할지, 아니면 별도의 트랜잭션을 사용할지를 정합지정 방법해당 옵션을 적용시키기 위해서는 하위 해당메서드에 전파설정옵션의 종류REQUIRED (기본 값)기존 트랜잭션이 있으면 참여하고, 없으면 새 트랜잭션을 생성함.A트랜잭션이 B트랜잭션을 실행 할 경우 B트랜잭션이 롤백되면 A트랜잭션도 같이 롤백예시코드@Servicepublic class ServiceA { @Autowired private Servi..

TIL 2025.02.07

7_1.트랜잭션 개념과 선언적/프로그래밍 방식 비교

학습내용트랜잭션 개념 이해JDBC 트랜잭션 사용트랜잭션 관리 방식학습정리1. 트랜잭션개념데이터베이스에서 여러 작업을 하나의 논리적 작업 단위로 묶어 처리 하는 것목적목적은 작업 도중 오류가 발생하더라도 데이터베이스의 무결성과 일관성을 보장트랜잭션의 주요 기능트랜잭션 시작-- 트랜잭션 시작 (데이터베이스에 따라 BEGIN이나 START TRANSACTION 사용)BEGIN;-- 또는START TRANSACTION;작업 수행-- 주문 시 특정 상품의 재고 감소UPDATE productsSET stock = stock - 1WHERE id = 'productId';-- 예를 들어, 주문 내역을 기록하는 작업도 함께 수행할 수 있습니다.INSERT INTO categories (name) VALUES ('카테고..

TIL 2025.02.04
728x90
반응형
LIST