Spring AOP 개념과 실행

Y39·2023년 4월 3일
0

toBeProgrammer

목록 보기
80/88

movie

Spring AOP

부가기능

  • 비즈니스 기능이 아닌 부수적인 기능 ⇒ 인프라 로직
  • 반드시 필요하지 않고, 전영역에서 나타남
    • 중복코드를 만들어낼 가능성이 높아짐
  • 비즈니스 코드와 섞여서 이해하기 힘들게 만든다.
    • 유지보수를 어렵게 함.
  • 이때, AOP를 통해서 부가기능을 관리할 수 있게 함

Untitled

AOP 구현방법

컴파일

  • java → class가 될 때 AOP를 삽입

클래스 로드

  • class를 메모리에 넣어줄 때 AOP 삽입

프록시 패턴

  • Spring AOP에서 사용하는 기법
  • java를 proxy로 감싸고 AOP 삽입하는 기법

Private field에서는 프록시가 먹히지 않는다.

  • 객체가 자기 자신의 method를 실행하면 proxy가 없는 상태로 실행
  • proxy로 감싸여 있지 않는 객체는 적용이 안 된다.

추가내용

Spring AOP vs AspectJ

  • 둘은 목적이 다름
    • Spring AOP는 개발자가 겪는 문제를 해결하기 위한 간단한 기능 제공
    • AspectJ 완벽한 AOP를 제공하려함
profile
System.out.print("Bold")

0개의 댓글