인프런 커뮤니티 질문&답변

ddNewB님의 프로필 이미지
ddNewB

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

AOP 적용

AOP 작성 하면서 ProceedingJoinPoint와 .proceed()의 기능

해결된 질문

작성

·

1.3K

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
AOP 작성 하면서 ProceedingJoinPoint와 .proceed()의 기능에 대해 제가 구글링을 하면서 찾아보다가 이해가 잘 되지 않아서 질문 남깁니다.

ProceedingJoinPoint joinPoint로 선언해서 어느패키지에 어떤 클래스에 어떤 객체를 실행 했는지 알려주는 건 알겠는데 proceed() 의 역할이 이해가 안갑니다.

구글링 해본 결과

AOP를 사용하면 @Around 어노테이션을 꼭 사용하고 @Around 내에서 proceed()메서드를 호출해야 한다고 나오면서 proceed() 기준 이전 이후로 나뉜다는 내용이 이해가 안가네요.

proceed() 를 기준으로 실제 서비스를 불러온다 라고만 이해하기에 뭔가 에메한거 같아서 .. 질문 남깁니다.

답변 1

0

안녕하세요. 정우협님, 공식 서포터즈 OMG입니다.
.

image

타겟이 되는 대상(@Around("execution(* hello.hellospring..*(..))"))을

호출한다고 이해하시면 됩니다.

 

실행 결과(순서)가 왜 이렇게 출력되는지 고민해보시면 좋을 것 같아요.
.
감사합니다.

ddNewB님의 프로필 이미지
ddNewB

작성한 질문수

질문하기