Spring Boot/AOP 2

SpringBoot - AOP (2)

AOP (1)에 이어서 두번째 AOP시간이다. 우선 오늘 처음으로 공부한 내용은 메소드의 실행시간을 가지고 서버의 부하, 서버의 현재 상태를 로깅으로 남길 수 있기 때문에 로깅을 남기는 실습을 먼저 진행하겠다. 하지만 이번엔 단순하게 AOP만 만드는 것이 아니라 커스텀 된 annotation을 하나 만들어서 해당 annotation을 가지고 annotation이 설정된 메소드만 기록을 할 수 있도록 실습을 진행하였다. @Around를 활용해 반복되는 logic을 AOP로 따로 빼네서 반복하지 않고 관리하고 실행할 수 있도록 하는 실습을 진행하였다. 우선 aop패키지에 TimerAop.java파일을 생성해 준다. 이어서 annotation패키지를 생성해 주고 Timer.java파일로 Timer annota..

Spring Boot/AOP 2023.05.01

SpringBoot - AOP (1)

AOP ( Aspect Oriented Programming) 관점지향 프로그램 스프링 어플리케이션은 대부분 특별한 경우를 제외 하고는 MVC 웹 어플리케이션에서는 Web Layer, Business Layer, Data Layer로 정의한다. - Web Layer : REST API를 제공하며, Client 중심의 로직 적용 - Business Layer : 내부 정책에 따른 logic를 개발하며, 주로 해당 부분을 개발 - Data Layer : 데이터 베이스 및 외부와의 연동을 처리 주요 Annotation Annotation 의미 @Aspect 자바에서 널리 사용하는 AOP프레임워크에 포함되며, AOP를 정의하는 Class에 할당 @Pointcut 기능을 어디에 적용시킬지, 메소드? Annotat..

Spring Boot/AOP 2023.05.01