본문 바로가기
반응형

pointcut4

[AOP] JoinPoint / ProceedingJoinPoint 차이 이전 포스팅에서 AOP에 대해 다룬 포스팅도 있고, pointcut에 대해 다룬 글들이 있다. 자세한 내용은 아래 참고 포스팅을 참고 바란다. 예제에서는 대부분 JoinPoint 로만 설명을 했으나 ProceedingJoinPoint 에 대해서 잠시 다루려고 한다. JoinPoint JoinPoint 는 테스트 코드로도 많이 다뤘었고 메서드에 대해서는 아래와 같다. (인터페이스는 호출되는 대상 객체, 메서드, 전달 파라미터 목록에 접근 할 수 있는 메소드 제공) 메서드 접근하는 영역 Signature getSignature() 호출되는 메서드에 대한 정보 Object getTarget() 대상 객체 Object[] getArgs() 파라미터 목록 Signature에 대해서도 아래와 같다. (인터페이스는 .. 2023. 12. 2.
aop pointcut 정리(추가 정리) 이전 포스팅에 이어 좀더 심화 정리를 추가하려고 한다. 1. 여러개의 execution 정의 -> 표현식을 사용한다. and 는 && , or 는 || 등을 사용하여 @Before("execution(* com..*.*(..)) && @annotation(org.apache.ibatis.annotations.Mapper)") 이와 같이 정의해준다. 2. 호출된 메서드에 대한 정보 -> System.out.println("location Name :" + jp.getTarget().getClass().getName()); System.out.println("method Name :" + jp.getSignature().getName()); System.out.println("uri Name :" + req.. 2023. 5. 15.
aop pointcut 정리 저번 포스팅에서 aop 설정법에 대해서 다룬적이 있다. 자세한 내용은 아래 참고 포스팅을 참고 바란다. 사용법은 다음과 같다. 먼저 @Aspect를 선언할 클래스를 만들어준다. @Aspect @Component public class AopTracker { .... 코드 구현 } @Component 역시 spring bean 주입을 위해 작성을 해줘야한다. 그리고 이어서 aspect 내에서 실행 할 메서드를 만들고 그 메서드에 아래와 같은 annotation을 달아준다. annotation 사용(호출) @Pointcut 어떤 메서드 일때 @Before 메서드 실행 전 @After 메서드 실행 후 @AfterReturning 메서드 정상 실행후 @AfterThrowing 메서드 실패 실행후 @Around .. 2023. 5. 14.
springboot AOP 설정하기 자바에서 aop 에 대해서 이전 포스팅에서 다룬 글이 있다. 자세한 사항은 아래 참고 포스팅 참고 바란다. 이번 포스팅에서는 springboot 에 aop 설정하는법에 대해서 다뤄 볼것이다. 개발 환경 springboot 3.0.5 maven 1. 우선 해당 라이브러리를 받아오기 위해 pom.xml 에 아래 dependency 를 추가한다. org.springframework.boot spring-boot-starter-aop 2. 다음은 maven 프로젝트 내에 main 메서드에 aop 사용을 위한 annotation 을 설정 해야한다. @EnableAspectJAutoProxy @SpringBootApplication public class AopProjectApplication { public st.. 2023. 5. 13.
반응형