본문 바로가기
spring

AOP(Aspect Oriented Programming)

by 신방동불주먹 2023. 1. 6.
  • Object Oriented Programming 객체지향 : 사용자의 관점 (주 업무)
  • Aspect Oriented Programming 관점지향 : 개발자와 운영자의 관점의 업무를 분리함

 

<AOP>

core concern(주업무로직)과 cross-cutting concern(관점분리 로직)을 따로 두고 

core concern을 호출 하여 사용하는 방식 : spring을 이용하면 aop 구현이 쉽다.

 

-> 사용자 요구의 주 업무가 아닌 개발자, 운영자관점에 해당되는 업무 (로그처리, 보안처리, 트랜잭션(한 단위) 처리 등)

코드를 분리하여 기존 코드에 손을 대지 않고 사용

 

proxy : 주업무 로직을 호출하게 해주는 역할(필수)

 

 

<Advice>

필요한 인터페이스를 상속받아 구현

  • Before : 앞에만 필요하는 cross-cutting concern 로직
  • After returnning : 뒷 부분에만 필요로하는 cross-cutting concern 로직
  • After thorwing : 예외처리관련
  • Around : 앞뒤 모두 필요한 로직

 

 

 

 

 

 

'spring' 카테고리의 다른 글

Ajax return 후 submit 막기  (0) 2023.02.04
mybatis  (0) 2023.01.11
mvnw  (0) 2023.01.02
@RestController  (0) 2023.01.02
PRG 패턴  (0) 2022.12.28