본문 바로가기
IT/Spring

토비 스프링 - AOP, 트랜잭션 용어

by 봉즙 2019. 11. 7.

타깃 : 부가기느을 부여할 대상. 핵심기능을 담은 클래스나 다른 부가 기능을 제공하는 프록시 오브젝트일 수 도 있다.

어드바이스 : 타깃에게 제공할 부가기능을 담은 모듈. 어드바이스는 오브젝트로 정의하기도 하지만 메소드 레벨에서도 정의할 수 있다.

조인포인트 : 어드바이스가 적용될 수 있는 위치

포인트컷 : 어드바이스를 적용할 조인포인트를 선별하는 작업 또는 그 기능을 정의한 모듈.

프록시 : 클라이언트와 타깃사이에서 존재하며 부가기느을 제공하는 오브젝트, DI를 통해 타깃 대신 ㅋ클라이언트에게 주입된다.

어드바이저 : 포인트것과 어드바이스를 하나씩 갖고 있는 오브젝트. 어드바이저는 어떠한 어드바이스를 포인트컷에 전달할 것인가에 대한 AOP의 가장 기본적인 정보.

에스펙트 : AOP의 기본 모듈이며 한개 또는 그 이상의 포인트컷과 어드바이스의 조합으로 만들어지며 보통 싱그론 형태의 오브젝트로 존재한다.

프록시 자동생성기 : 다른빈을 DI하지도 않고 자신도 DI 되지 않으며 독립적으로 존재한다.

 

 

트랜잭션 전파 : 트랜잭션의 경계에서 이미 진행중인 트랜잭션이 있는 경우, 없는 경우 어떻게 동작할 것인가를 결정하는 방식

격리수준 : 서버환경에서는 여러개의 트랜잭션이 동시에 진행 될수 있어 문제가 발생하는 것을 제어하기 위해 격리수준을 설정. 완전 독립적으로 실행하게되면 성능이 크게 떨어진다.

제한시간 : 트랜잭션을 수행하는 제한시간

읽기전용 : 트랜잭션 내에서 데이터를 조작하는 시도를 막아줄수 있다.

 

@Tracsactional : 타시은 메소드와 타입이기에 메소드,클래스,인터페이스에 사용할 수 있다. 테스트에서 사용하는 경우 테스트가 끝나면 자동으로 롤백이 된다. 유지 하고 싶은 경우 @Rollback사용

대체 정책 : 메소드의 속성을 확일할 때 타깃메소드, 타깃 클래스, 선언 메소드, 선업 타입의 순서에 따라 @Transactional 이 적용되었는지 차례로 확인하고 가장먼저 발견되는 속성정보를 사용하는 방법

'IT > Spring' 카테고리의 다른 글

2021-01-06-bean-thread-safe  (0) 2023.02.27
SSH 연결하기  (0) 2020.07.27
토비 스프링 - AOP  (0) 2019.11.04
토비 스트링 - 트랜잭션  (0) 2019.11.01
토비 스프링 - 예외  (0) 2019.10.28

댓글