팥빵 먹으면서 코딩하는 블로그

AOP에 대하여 본문

study/JAVA SPRING

AOP에 대하여

김팥빵_ 2024. 8. 30. 16:54

AOP

관점지향 프로그래밍

-running time을 알고싶을 때 주로 @Aspect를 사용해 time을 체크

 

스프링 어플리케이션은 대부분 특별한 경우를 제외하고는 MVC

웹 어플리케이션에서는 Web Layer, Business Layer, Data Layer로 정의

 

-web layer: rest api를 제공하며, client 중심의 로직 적용(response를 내려주거나, http 스테이터스를 바꿔주거나 하는 역할)

-business layer : 내부 정책에 따른 logic을 개발하며, 주로 해당 부분을 개발(서비스를 개발할 때 주로 함)

-data layer: 데이터베이스 및 외부와의 연동을 처리(다른 서버와 연동을 한다거나 외부와의 데이터 연결을 처리할 때 사용)

 

 

**주요 annotation

- @Aspect :자바에서 널리 사용하는 AOP프레임 워크에 포함되며, AOP를 정의하는 클래스에 할당

- @Pointcut : 기능을 어디에 적용시킬지, 메소드 annotation 등 AOP를 적용시킬 지점을 설정

- @Before : 메소드 실행하기 이전에 실행되는 것

- @After : 메소드가 성공적으로 실행 후 실행되는 것, 예외가 발생되더라도 실행

- @AfterReturning : 메소드 호출 성공 실행되는 메소드에 붙여줌 (Not throws)

- @AfterThrowing : 메소드 호출 실패 예외 발생하는 메소드에 붙여줌 (throws)

- @Around : Before / After 모두 제어

 

'study > JAVA SPRING' 카테고리의 다른 글

Validation  (0) 2024.09.04
spring boot Annotation 정리  (0) 2024.09.04
IoC에 대하여  (0) 2024.08.30
DI에 대하여  (0) 2024.08.29
spring에 대하여  (0) 2024.08.29