티스토리 뷰

spring

@Transactional 애노테이션 속성

paulownia 2018. 9. 27. 11:23

* 전파(Propagation) 속성:

- PROPAGATION_MANDATORY 작업은 반드시 특정한 트랜잭션이 존재한 상태에서만 가능

- PROPAGATION_NESTED : 기존에 트랜잭션이 있는 경우, 포함되어서 실행

- PROPAGATION_NEVER : 트랜잭션 상황에 실행되면 예외 발생

- PROPAGATION_NOT_SUPPORTED : 트랜잭션이 있는 경우에는 트랜잭션이 끝날 때까지 보류된 후 실행

- PROPAGATION_REQUIRED : 트랜잭션이 있으면 그 상황에서 실행, 없으면 새로운 트랜잭션 실행 (기본설정)

- PROPAGATION_REQUIRED_NEW : 대상은 자신만의 고유한 트랜잭션으로 실행

- PROPAGATION_SUPPORTS : 트랜잭션을 필요로 하지 않으나, 트랜잭션 상황에 있다면 포함되어서 실행


* 격리(Isolation) 레벨

- DEFAULT : DB 설정, 기본 격리 수준(기본설정)

- SERIALIZABLE : 가장 높은 격리, 성능 저하의 우려가 있음

- READ_UNCOMMITTED : 커밋되지 않은 데이터에 대한 읽기를 허용

- READ_COMMITTED : 커밋된 데이터에 대해 읽기 허용

- REPEATEABLE_READ : 동일 필드에 대해 다중 접근 시 모두 동일한 결과를 보장


* Read-only 속성

- true인 경우 insert, update, delete 실행 시 예외 발생, 기본 설정은 false


* Rollback-for-예외

- 특정 예외가 발생 시 강제로 Rollback


* No-rollback-for-예외

- 특정 예외의 발생 시 Rollback 처리되지 않음




'spring' 카테고리의 다른 글

파일업로드 관련 설정  (0) 2018.09.27
AOP(Aspect Oriented Programming) 용어  (0) 2018.09.27
트랜잭션 설정  (0) 2018.09.26
AOP, root-context 설정  (0) 2018.09.20
AOP 라이브러리, pom.xml  (0) 2018.09.20
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함