Spring Web Project/7. AOP와 트랜잭션 (Transaction)
-
02. TransactionSpring Web Project/7. AOP와 트랜잭션 (Transaction) 2021. 1. 31. 15:52
1. 트랜잭션의 기본 원칙(ACID 속성) 1) 원자성(Atomicity) : 하나의 트랜잭션은 모두 하나의 단위로 처리 2) 일관성(Consistency) : 트랜잭션이 성공했다면 DB의 모든 데이터는 일관성 유지 3) 격리(Isolation) : 트랜잭션으로 처리되는 중간에 외부의 간섭은 없어야함 4) 영속성(Durability) : 트랜잭션이 성공적으로 처리되면, 그 결과는 영속적으로 보관 2. 트랜잭션 매니저 설정 > 하나의 DataSource를 사용하는 경우, 스프링에서 제공하는 DataSourceTransactionManager를 이용, DataSource 주입 > 은 @Transactional 애노테이션을 이용한 트랜잭션 관리가 가능 Note) @Transactional 우선순위 1) 메소드..
-
01. AOPSpring Web Project/7. AOP와 트랜잭션 (Transaction) 2021. 1. 28. 12:34
1. AOP(Aspect Oriented Programming) 개념 > '비즈니스 로직은 아니지만, 반드시 해야 하는 작업' > 횡단 관심사(cross-concern) : 공통으로 사용되지만, 그 자체가 목적은 아니다. > 대표적인 예 : 보안 처리, 로그 기록, 문제 발생 시를 대비한 이중 백업 등 2. AOP 관련 용어 용어 설명 Aspect 공통 관심사에 대한 추상적인 명칭. 예를 들어 로깅이나 보안, 트랜잭션과 같은 기능 자체에 대한 용어 Advice 실제로 기능을 구현한 객체 Join points 공통 관심사를 적용할 수 있는 대상(작성된 Advice가 활약할 수 있는 위치 의미). Spring AOP에서는 각 객체의 메소드가 이에 해당 Pointcuts 여러 메소드 중 실제 Advice가 적..