반응형 트랜잭션2 5장 서비스 추상화 - 2 5.2 트랜잭션 서비스 추상화5.2.3 트랜잭션 동기화Connection 파라미터 제거스프링에서 제공해주는 트랜잭션 동기화(transaction synchronization) 은 트랜잭션을 시작하기 위해 만든 Connection 오브젝트를 특별한 저장소에 보관해두고, 이후에 호출되는 DAO 의 메소드에서는 저장된 Connection 을 가져다가 사용하게 한다. 이는 DAO가 사용하는 JdbcTemplate이 트랜잭션 동기화 방식을 이용하도록 하는 것이다.트랜잭션 동기화 저장소는 작업 스레드마다 독립적으로 Connection 오브젝트를 저장하고 관리하기 때문에 다중 사용자를 처리하는 서버의 멀티스레드 환경에서도 충돌날 염려가 없다.트랜잭션 동기화 적용스프링이 제공하는 트랜잭션 동기화 클래스는 Transac.. 2025. 4. 9. 5장 서비스 추상화 - 1 5.1 사용자 레벨 관리 기능 추가아래와 같은 비즈니스 로직을 추가한다고 가정한다.사용자의 레벨은 basic, silver, gold 세가지 중 하나이다.사용자가 처음 가입하면 basic, 이후 활동에 따라 한단계씩 업그레이드 된다.가입 후 50회 이상 로그인하면 basic 에서 silver 레벨이 된다.silver 레벨이면서 30번 이상 추천을 받으면 gold 레벨이 된다.사용자 레벨의 변경 작업은 일정한 주기를 가지고 일괄적으로 진행된다. 변경 작업 전에는 조건을 추엊ㄱ하더라도 레벨의 변경이 일어나지 않는다.5.1.1. 필드 추가사용자의 레벨을 저장할 필드가 필요하다. 만약 int 값으로 레벨을 관리한다고 예를 들었을 경우 코드 관리는 깔끔할 수 있으나, 다른 종류 예를 들어 basic(1), sil.. 2025. 4. 4. 이전 1 다음 반응형