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

가보자!!님의 프로필 이미지
가보자!!

작성한 질문수

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

AOP가 필요한 상황

함수 실행관련 질문입니다

작성

·

169

1

public List<Member> findMembers(){  }함수안 try { } finally{} 부분의 로직에 대해서 질문을 하고자 합니다.

try문 안에 return이 있음에도 finally부분이 실행되는건가요?  다시말해,

Q. finally는 예외가 발생해도 무조건 실행되는 부분으로 알고있기는 하지만, 함수실행이 끝났음에도 finally가 실행 되는건가요?

답변 5

1

가보자!!님의 프로필 이미지
가보자!!
질문자

담변 감사합니다^^. 스프링 완전정복강의가 이번 년도에 꼭 나오길 바라고 있습니다^^

1

김영한님의 프로필 이미지
김영한
지식공유자

네 맞습니다.

memberService의 실행이 끝나고 joinPoint.proceed()의 return 이 실행되는데, 이때 finally가 실행됩니다.

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 가보자!!님

finally는 try 로직이 실행되기만 하면 항상 실행됩니다. 예외가 발생해도 실행되고, 그 안에 return이 있어서 실행됩니다.

감사합니다.

0

가보자!!님의 프로필 이미지
가보자!!
질문자

추가적으로 궁금한 사항이 생겨 질문을 남깁니다!
joinPoint.proceed()를 만나면 실제memberSevice가 실행이 되는것까지 이해를 했습니다. 그렇다면 AOP클래스안에 있는 finally는 언제 실행이 되는것인가요?
실제 memberService의 실행이 끝난 후 finally가 실행되는 것인가요??

0

가보자!!님의 프로필 이미지
가보자!!
질문자

답변 감사합니다^^

가보자!!님의 프로필 이미지
가보자!!

작성한 질문수

질문하기