[Spring] 20.Spring AOP(XML, Point Cut①)
·
🖥️ Backend/Spring
AOP 용어설명조인포인트(Joinpoint)조인포인트는 클라이언트가 호출하는 모든 비즈니스 메소드를 의미하며, 보통 Impl 클래스의 모든 메서드를 조인포인트라고 한다. 또한 조인포인트는 포인트컷 대상 또는 포인트컷 후보로도 불리며, 설정된 expression에서 지정한 클래스의 모든 메서드들이 조인포인트로 간주된다.포인트컷(Point Cut)포인트컷은 실제 aop가 적용될 클래스 메소드들이다. 조인포인트에서 필터링해서 원하는 메소드에만 횡단 공통기능을 수행시키기 위해서 사용한다.어드바이스(Advice)횡단 관심에 해당하는 공통 기능의 코드이다. 독립된 클래스의 메소드로 작성한다.위빙(Weaving)포인트컷으로 지정한 핵심 관심 메소드가 호출될 때, 어드바이스에 해당하는 횡단 관심 메소드가 삽입되는 과정..
[Spring] 19.Spring AOP(XML, AfterThrowingAdvice)
·
🖥️ Backend/Spring
Advice 동작 시점설명Before비지니스 메서드 실행 전 동작After- AfterReturning : 비지니스 메서드가 성공적으로 리턴되면 동작- AfterThrowing : 비지니스 메서드 실행 중 예외가 발생하면 동작(마치 try~catch 블록에서 catch 블록에 해당)- After : 비지니스 메서드가 실행된 후, 무조건 실행(try~catch~finally 블록에서 finally 블록에 해당)AroundAround는 메서드 호출 자체를 가로채 비지니스 메서드 실행 전후에 처리할 로직을 삽입할 수 있음 // 예외를 발생시키기 위해 NewlecExam 클래스 수정package spring.aop.entity;public class NewlecExam implements Exam { priv..
[Spring] 18.Spring AOP(XML, AfterReturningAdvice)
·
🖥️ Backend/Spring
Advice 동작 시점설명Before비지니스 메서드 실행 전 동작After- AfterReturning : 비지니스 메서드가 성공적으로 리턴되면 동작- AfterThrowing : 비지니스 메서드 실행 중 예외가 발생하면 동작(마치 try~catch 블록에서 catch 블록에 해당)- After : 비지니스 메서드가 실행된 후, 무조건 실행(try~catch~finally 블록에서 finally 블록에 해당)AroundAround는 메서드 호출 자체를 가로채 비지니스 메서드 실행 전후에 처리할 로직을 삽입할 수 있음 // AfterReturningAdvice 인터페이스를 구현한 LogAfterReturningAdvice 클래스package spring.aop.advice;import java.lang.r..
[Spring] 17.Spring AOP(XML, BeforeAdvice)
·
🖥️ Backend/Spring
Advice 동작 시점설명Before비지니스 메서드 실행 전 동작After- AfterReturning : 비지니스 메서드가 성공적으로 리턴되면 동작- AfterThrowing : 비지니스 메서드 실행 중 예외가 발생하면 동작(마치 try~catch 블록에서 catch 블록에 해당)- After : 비지니스 메서드가 실행된 후, 무조건 실행(try~catch~finally 블록에서 finally 블록에 해당)AroundAround는 메서드 호출 자체를 가로채 비지니스 메서드 실행 전후에 처리할 로직을 삽입할 수 있음 // MethodBeforeAdvice를 구현한 LogBeforeAdvice 클래스package spring.aop.advice;import java.lang.reflect.Method;im..
[Spring] 16.Spring AOP(XML, AroundAdvice)
·
🖥️ Backend/Spring
스프링은 Cross-cutting Concern을 삽입하는 방식에 따라 BeforeAdvice, AfterRetrunningAdvice, AfterThrowingAdvice, AfterAdvice, AroundAdvice 이 5가지로 분류한다. 여기서 Advice는 횡단관심에 해당되는 공통 기능의 코드를 의미한다.Advice 동작 시점설명Before비지니스 메서드 실행 전 동작After- AfterReturning : 비지니스 메서드가 성공적으로 리턴되면 동작- AfterThrowing : 비지니스 메서드 실행 중 예외가 발생하면 동작(마치 try~catch 블록에서 catch 블록에 해당)- After : 비지니스 메서드가 실행된 후, 무조건 실행(try~catch~finally 블록에서 finally..
[Spring] 15.순수 Java AOP
·
🖥️ Backend/Spring
AOPAOP(Aspect-Oriented Programming, 관점 지향 프로그래밍)는 프로그래밍의 한 패러다임으로, 애플리케이션의 공통 관심 사항(Cross-Cutting Concerns)을 모듈화하는 방법이다. AOP를 통해 로깅, 트랜잭션 관리, 보안 등과 같은 공통 기능을 애플리케이션의 다른 부분에 영향을 주지 않고 분리하여 관리할 수 있다. 다시 말하여 보통 비즈니스 웹 애플리케이션이라면 사업에 핵심적인 핵심 비즈니스 로직이 있고, 애플리케이션 전체를 관통하는 부가 기능 로직이 있다. 이를 횡단 관심사(cross-cutting concerns)라고 한다. (로깅, 보안, 트랜젝션) 횡단 관심사의 코드를 핵심 비즈니스 로직의 코드와 분리하여, 코드의 간결성을 높이고 변경에 유연함과 무한한 확장이..
Developer Quarterly
'🖥️ Backend' 카테고리의 글 목록 (3 Page)