1. 배경
1) 특별한 설정이 없을 경우, SqlSession은 개별 쿼리 별로 commit, rollback을 수행한다.
2) method 에서 insert, update, delete 쿼리를 수행해서 method 별로 commit, rollback을 수행할 경우 아래와 같이 한다.
Spring 에서는 개별 코드별로 transaction을 설정하지 않고, (programming transaction - 세세한 것의 설정이 가능하나, 코드 반복이 있고, 실수하기 쉽다.) transaction을 사용하겠다는 선언을 통해(declarative transaction) transaction을 설정할 수 있다.
2. 사용
1) DispatcherServlet-context.xml
transactionManager에 대해 아래와 같이 설정한다.
2) java(Repository)
: method 위에 @Transactional 을 붙여준다.
'Programming Practice > Spring' 카테고리의 다른 글
query XML 에서 사용하는 Vo(Entity) type 의 alias 지정 (0) | 2014.12.14 |
---|---|
Repository(Dao) 에서 SqlSession 사용_MySQL (0) | 2014.12.14 |
MyBatis를 통한 Spring과 MySQL 연결 (0) | 2014.12.09 |
Dispatcher Servlet 설명 (0) | 2014.10.12 |
기본적인 pom.xml 설정 (0) | 2014.10.12 |