# Spring AOP
Spring AOP에 대해
Service코드에서 필요한 내용은 비즈니스 로직이라고 불리는 핵심 기능이다. 다른 인프라 로직(=부가가능 ex: 로깅)은 어플리케이션의 전 영역에서 나타날 수 있고, 중복코드를 만들어 낼 가능성 때문에 비즈니스 로직과 함께 있으면 유지보수와 해당 로직을 이해하기 힘

Spring AOP 정리
AOP란 Aspect-Oriented Programming의 약어로 스프링의 3대 핵심 요소 중 하나입니다. AOP, 관점 지향 프로그래밍은 흩어진 Aspect를 모듈화 할 수 있는 프로그래밍 기법을 말합니다. 관점 지향은 어떤 로직을 기준으로 핵심적인 관점, 부가적인
Spring AOP
Proxy 란? Proxy 는 사전적인 의미로 “대리인"이라는 뜻입니다. java 에서 프록시란 대리를 수행하는 클래스를 의미합니다. Proxy 는 Client 가 사용하려고 하는 실제 대상인 것 처럼 위장을 해서 클라이언트의 요청을 받아줍니다. 여기서 위장이란 "

JDK Dynamic Proxy & CGLIB
접근 제어를 위한 Proxy pattern, 새로운 기능 추가를 위한 Decorator pattern은 둘다 Proxy를 사용해 핵심 기능과 부가 기능을 분리할 수 있다. 하지만 다음과 같은 문제가 발생한다. 프록시를 적용하기 위해 적용할 대상만큼의 프록시 객체 생성

[Spring AOP] @Aspect
개발을 하다가 불필요한 쿼리를 줄이기 위해 콘솔창에 뜨는 로그를 확인했다. 하지만 로그가 너무 많아 어떤 과정의 어떤 메서드에서 발생했는지 제대로 파악하기 어려워 불편을 겪었고 이를 해결하기 위해 요청에 대한 처리과정에서 사용되는 메서드명을 출력하는 기능을 만들기로 결
데브코스 W5D5
백엔드 데브 코스 중 중요한 개념을 정리하거나 과제 개발 일지를 정리한 공간입니다. AoP(Aspect Orient Programming) 관점 지향 프로그래밍이라는 뜻으로 계층 내에서가 아닌 계층마다 가지고 있는 공통 관심사의 분리를 허용함으로써 모듈성을 증가시키는

[Spring Boot] AOP와 Transactional
AOP? Spring의 주요 특징 중 하나인 AOP에 대해 알아보자. AOP(관점 지향 프로그래밍)란 기존의 객체 지향 프로그래밍을 돕는 보조적인 기술로, 핵심적인 관심 사항과 공통 관심 사항으로 분리시키고 각각을 모듈화 하는 것을 의미한다. 출처 - MangKyu'
[Spring] Spring AOP 내부 메서드 호출시 문제해결
특정 클래스에 AOP를 적용했을 때 아래와 같은 구조에서 발생 가능한 문제입니다.위 클래스의 모든 메서드를 JoinPoint로 하는 상황입니다.문제는 external 메서드에서 internal메서드를 호출할 때 발생합니다.external 호출시 정의한 Advice 로직

🔥 TIL - Day 82 AspectJ Pointcut 기본문법 (Spring AOP를 이용한 테스트)
AspectJ Pointcut (execution) 기본문법 with Spring AOP

Spring에서 프록시 패턴 사용하기 - 직접 프록시 생성부터 동적프록시, Spring AOP까지
프록시 패턴 적용 ~ 동적 클래스 ~ AOP까지..!

Spring AOP를 활용해 로깅하기
이론적으로 학습한 프록시, Spring AOP를 프로젝트에 적용해보자.homeController UserAspect Aspect 클래스를 만들고 빈으로 등록한다.@Around 어노테이션으로 포인트 컷을 정의했다. \- 접근제어자 → 생략 \- 반환 타입

Java 환경에서 기본 패턴의 캐시 적용을 돕는 ARCUS 공통 모듈
캐시를 처음 적용해보는 개발자라면, 애플리케이션에 캐시를 어떻게 적용할 지에 대한 방향을 제대로 못 잡을 수 있습니다. 애플리케이션에 캐시를 적용할 수 있는 패턴은 매우 다양합니다. 그 중 가장 일반적으로 사용되는 Demand-fill 패턴에 대해 알아보고, 이 방식을