◽ Spring, SpringBoot

[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)

 

푸터바