2022/04

트랜잭션은 가장 작은 작업의 단위로, 우리는 여러개의 SQL이 사용되는 작업을 하나의 트랜잭션으로 취급해야하는 경우가 존재한다. 대표적인 예가 우리가 모두 알고 있는 계좌이체 같은 경우이다. 스프링에서 트랜잭션을 위해 여러가지 기술들을 제공하고 있는데 관련해서 알아보자. 트랜잭션 경계설정 JDBC를 이용하게되면 아래와 같이 트랜잭션 경계를 설정하여 2개의 작업을 한 트랜잭션으로 묶을 수 있게 된다. Connection c = dataSource.getConnection(); c.setAutoCommit(false); // 트랜잭션 시작 (자동 커밋 옵션 false) try { // 하나의 트랜잭션으로 묶인 단위 작업 ProparedStatement st1 = c.prepareStatement("출금계좌에..
2022.03.23 - [데이터베이스 노트/데이터베이스] - Database의 레플리케이션(Replication) (Master/Slave DB) 앞에서 Master/Slave DB 환경을 구축하였을 때의 이점을 살펴보았으니 애플리케이션단에서 구현하는 방법을 살펴보자. 개발환경 : MyBatis 일단 각 DB 별 DataSource가 필요하므로 DataSoruce를 정의해 준다. ... // Master DataSource @Bean(name = MASTER_DATASOURCE) public HikariDataSource masterDataSource() throws SQLException { return new HikariDataSource(getHikariConfig(getOracleDataSourc..
깡냉쓰
'2022/04 글 목록