transaction
-
@Transactional(선언적 트랜잭션) bean Id 지정해서 사용하기웹 개발/Spring Framework 2018. 6. 28. 14:53
스프링에서 일반적으로 선언적 트랜잭션을 사용하기 위해서는 dataSource가 있는 xml 위치에서 123 cs 을 선언해서 사용한다. 하지만, 복수개의 트랜잭션을 사용하기 싶어하는 분들도 있을 것이고, 나처럼 기존 소스를 안 건드리기 위해 특정 부분에서만 트랜잭션을 걸어주고 싶을 수 있다. 에러가 발생해야 내가 무엇을 몰랐는지 알게 되는 것 같다.(에러의 긍정적인 부분이라 생각함) 123 cs dataSource가 있는 xml에서 위와 같이 선언하고 JUnit을 돌려보았더니 위와 같은 에러가 발생했다. 이게 무엇인지 구글링을 해보니 tx:anntation-driven은 default 값으로 transactinManager로 선언된 DataSourceTransactionManager를 찾는 것을 알았다...
-
[iBatis+Spring+mariaDB] AUTO_INCREMENT의 초기화와 transaction에 관하여DataBase/MariaDB & MySQL 2018. 5. 3. 09:42
회사에서 iBatis를 사용하는 부분이 아직 남아있다.(대부분 MyBatis로 전환했지만.) iBatis부분에서 기능을 활용해 sequence를 만들어내고 있었다. 이 부분은 auto_increment로서 숫자가 자동으로 올라가고 있었다. 난 지금 JUnit test를 하는 중이기 때문에 클래스 부분에서 @Transactional을 적용하고 있었다. 몰랐던 사실이지만, auto_increment는 transaction이 적용되지 않는다는 것이었다. 그 뜻은 auto_increment는 rollback이 적용되지 않는다는 것. JUnit test를 할 때 이런 경우가 있다면, 테스트를 한 번 해보고 @Ignore처리를 하면 좋을 것 같다. auto_increment를 돌릴 수 있는 방법이 있다면, 직접 s..