◽ Spring, SpringBoot
2019. 8. 16.
08:38
[Spring - 어노테이션(Annotation) ] @Transactional - 실패시 롤백
@Transactional 설정
root-context.xml에 설정을 해주면 된다.
참고 : rollback이란 데이터베이스에서 업데이트에 오류가 발생할 때, 이전 상태로 되돌리는 것을 말한다. 후진 복귀라고도 한다. 데이터베이스는 업데이트 이전 저널 파일을 사용하여 원래의 정상적인 상태로 되돌린다.
1
2
3
4
5
|
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<tx:annotation-driven transaction-manager="transactionManager" />
Color Scripter
|
@Transactional 속성
isolation | @Transactional(isolation=Isolation.DEFAULT) | Transaction의 isolation Level. 별도로 정의하지 않으면 DB의 Isolation Level을 따름. |
rollbackFor | @Transactional(rollbackFor=Exception.class) | 정의된 Exception에 대해서는 rollback을 수행 |
timeout | @Transactional(timeout=10) | 지정한 시간 내에 해당 메소드 수행이 완료되지 않은 경우 rollback 수행. -1일 경우 no timeout (Default = -1) |