AOP: 관점 지향 프로그래밍
Aspect: 추상 명사로 횡단 관심사를 의미
Advice : 횡단 관심사를 구현한 객체
Target : 핵심 로직을 가지고 있는 객체
Proxy: Target 객체 + Advice
JointPoint: 메서드
추가
runtime삭제해주고 version 변경해줌
@Component : bean을 만들어줌. component-scan에서 스캔하여 사용함. context에 정보등록 필요
aspect를 구현한 클래스가 advice이고 여러가지 메서드에 포인트컷을 지정하는 advice가 붙을수있고 메서드에 붙는 execution의 형태가 많다. 먼저 실행할 것인지, 나중에 실행할 것인지에 따라 beforeAdvice / AfterAdive로 나눠짐.
기본 비즈니스 로직은 건드리지 않은 상태에서, 추가적으로 로직을 만들어서 확인하고 싶은 경우 AOP를 사용함.
AfterReturning : 성공적으로 실행됐을때
AfterThrowing : 예외가 발생 했을
pointcut이 지정되는 곳은 execution이다
하나만 있을경우는 pointcut생략가능.
트랜잭션
Browse
transactionManager빈 생성
@Transactional로 묶은 경우
기존에 첫번째 insert성공한 데이터도 커밋처리가 되지 않고, 실패 됨.
비즈니스 로직이 복잡해지면 적절한 곳에 transactional로 묶어서 한번에 처리할 수 있다.
비즈니스 메서드에 많이 붙임.
'개발 공부 > Spring' 카테고리의 다른 글
Security를 이용한 로그인 처리 (0) | 2023.09.11 |
---|---|
파일 업로드/ 썸네일 (0) | 2023.09.08 |
댓글의 페이징처리/ 댓글 (0) | 2023.09.06 |
Rest / Ajax 댓글처리 (0) | 2023.09.04 |
검색 (0) | 2023.09.01 |