Notice
Recent Posts
Link
Tags
- string
- 자바
- 스프링
- PYTHON
- 1차원 배열
- join
- jpa
- Django
- DI
- ORM
- spring boot
- java
- AWS
- @transactional
- SSL
- spring mvc
- springboot
- 문자열
- Docker
- mysql
- 데이터베이스
- spring security 6
- spring
- 프로그래머스
- nginx
- 스프링부트
- sql
- select
- Git
- session
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Archives
개발하는 자몽
[트랜잭션] @Transactional AOP 본문
@Transactional 애노테이션은 스프링이 제공하는 트랜잭션 AOP이다. @Transactional 애노테이션은 메서드와 클래드에 붙일 수 있다. 클래스에 붙이면 외부에서 호출 가능한 public 메서드가 AOP 적용 대상이 된다.
@Transactional 애노테이션 하나만 선언해서 편리하게 트랜잭션을 적용하는 것을 선언적 트랜잭션 관리(Declarative Transaction Management)라고 한다. 선언적 트랜잭션 관리는 해당 로직에 트랜잭션을 적용하겠다고 어딘가에 선언하기만 하면 트랜잭션이 적용되는 방식이다.
참고
스프링 AOP를 적용하려면 어드바이저, 포인트컷, 어드바이스가 필요하다. 스프링은 트랜잭션 AOP 처리를 위해 다음 클래스를 제공한다. 스프링 부트를 사용하면 해당 빈들은 스프링 컨테이너에 자동으로 등록된다.
어드바이저 : BeanFactoryTransactionaAttributeSourceAdvisor
포인트컷 : TransactionAttributeSourcePointCut
어드바이스 : TransactionInterceptor
동작 원리는 다른 블로그 글을 확인
'Java > Spring' 카테고리의 다른 글
스프링 예외 추상화 (1) | 2022.09.29 |
---|---|
@SpringBootTest, @TestConfiguration (0) | 2022.09.24 |
[Spring MVC] Model, @ModelAttribute (1) | 2022.09.10 |
[Spring MVC] 뷰 템플릿, 템플릿 엔진, thymeleaf (0) | 2022.09.08 |
프록시(Proxy) (0) | 2022.08.13 |
Comments