• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

스프링 인터셉터 호출에서 afterCompletion에서 질문이 있습니다.

22.02.15 13:49 작성 조회수 181

1

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

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

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)
[질문 내용]
여기에 질문 내용을 남겨주세요.
 
 
 
 
안녕하세요. 스프링 인터셉터 호출에서 afterCompletion에서 질문이 있습니다.
 
 
첫 화면 실행 결과 로그 출력 결과입니다!
(1) preHandle 출력결과 h.login.web.interceptor.LogInterceptor : LogInterceptro REQUEST [e725f1cc-7508-4e39-9d2a-9183f6f70096][/][hello.login.web.HomeController#homeLoginV3Spring(Member, Model)]
 
(2) postHandle 출력결과 h.login.web.interceptor.LogInterceptor : LogInterceptro postHandle [ModelAndView [view="home"; model={}]]
 
(3) afterCompletion 출력결과 h.login.web.interceptor.LogInterceptor : LogInterceptro RESPONSE [e725f1cc-7508-4e39-9d2a-9183f6f70096][/][hello.login.web.HomeController#homeLoginV3Spring(Member, Model)]
 
afterCompletion : 뷰가 렌더링 된 이후에 호출된다.
 
여기서 질문이 있습니다.
 
결국 afterCompletion이 어떤 기능을 하니? 라는 질문이 들어왔다면
 
정상 흐름일 때는 뷰가 렌더링 된 이후에 호출된다.
예외가 발생할 시 어떤 에러가 발생했는지 로그로 확인할 수 있다.
 
 
에서 정상 흐름일 때 '뷰가 렌더링 된 이후에 호출된다.' 라고 한 것은
- 최종 결과물을 화면에 띄워준다는 것을 의미하는 것인지?
- 아니면 정상 호출되었다는 것을 확인할 수 있다고 하는 것인지?
헷갈림에 작성하게 되었습니다.
 

답변 2

·

답변을 작성해보세요.

2

David님의 프로필

David

2022.02.15

안녕하세요. Chang96님, 공식 서포터즈 David입니다.

뷰가 렌더링 된 이후에 호출된다는 말은 사용자에게 제공될 화면 데이터가 준비된 다음 호출된다는 말입니다.

이는 응답이 사용자에게 도달하는 것과는 다른 의미입니다.

뷰가 렌더링된 후 렌더링된 데이터가 응답의 바디에 담겨져 사용자의 브라우저에 도달하고, 응답의 바디에 담긴 데이터를 읽어 브라우저에 나타냅니다.

감사합니다.

0

ChangDoit님의 프로필

ChangDoit

질문자

2022.02.16

아하! 감사합니다ㅎㅎ