본문 바로가기

전체 글

(27)
JPA 다중 데이타소스 관리 (3) 도메인, 저장소 객체 이제 모든 설정이 완료 되었고 정말로 다중 데이타소스 상에서 트랜잭션이 정상적으로 동작이 되는지를 확인해 보겠습니다.먼저 테스트를 위해 생성해둔 데이타소스에서 사용할 도메인 객체와 저장소 객체를 각각 생성하겠습니다. 데이타소스 1번에서 사용할 도메인과 저장소 객체 입니다. @NoArgsConstructor(access = AccessLevel.PROTECTED) @Getter @Entity(name = "test_code") public class TestCode1 { @Id private String code; private String name; @Column(name = "create_date") private Date createDate; public TestCode1(Str..
JPA 다중 데이타소스 관리 (2) 트랜잭션 데이타를 사용하고 관리할때 가장 중요하게 고려되어야 하는 것은 데이타의 무결성을 어떻게 보장 할 것인가 입니다. 이를 위해 데이타베이스에서는 트랜잭션 이라는 작업 단위를 제공 하는데 트랜잭션은 원자성(Atomicity), 일관성(Consistency), 격리성(Isolation), 영속성(Durability) 등의 속성을 통해 데이타의 무결성을 보장해 줍니다. 원자성 : 트랜잭션 작업 단위는 전부 실행이 되던지 아니면 전부 실패되어야 합니다. 일관성 : 특정한 조건(데이타 길이, 데이타 타입, Null 여부 등)이 지정된 데이타는 도중에 데이타가 변조되지 않아야 합니다. 격리성 : 하나의 트랜잭션에서 다루고 있는 데이타는 동시에 다른 트랜잭션에서 사용할 수 없습니다. 영속성 : 트랜잭션이 성공적..
JPA 다중 데이타소스 관리 (1) 사용 기술 Spring boot 2.0.4.RELEASE maven JPA H2 DBMS Hikari CP java 1.8 개요 Spring Boot 을 사용해 개발을 진행하면 많은 부분의 설정을 자동화해줘서 개발 설정으로 인한 고민을 하지 않아도 되기 때문에 보다 빠르게 개발에 집중할 수 있게 해줍니다. 하지만 정해진 기능이 아닌 조금 다른 방식으로 Spring Boot 을 사용하고자 하면 Spring Boot 이 아닌 Spring에 관련된 설정을 하나씩 일일이 해줘야 하는 불편함이 있는 건 어쩔 수 없는 부분입니다. 이 글에서는 Spring Boot에서 다중 데이타소스를 관리하고 다중 트랜잭션을 설정해 JPA 상에서 동작이 되게 Spring 설정을 추가 하는 내용을 다룹니다. maven 설정 프로젝트..