Spring/Spring: 정리
[Spring] 인터셉터의 HandlerInterceptor 인터페이스 정리
데브마우스
2024. 1. 24. 17:07
HandlerInterceptor 인터페이스는 무엇인가요?
HandlerInterceptor 인터페이스는 preHandle(), postHandle(), afterCompletion() 세 메서드를 가지고 있습니다. 인터페이스로 구현되었으니 위 3가지 메서드를 반드시 작성하셔야 합니다.
preHandle()은 Request에 비유할 수 있습니다.
postHandle()은 메서드가 실행된 시점에 인터셉터가 발생합니다.
afterCompletion()은 Response에 비유할 수 있습니다.
| HandlerInterceptor 인터페이스의 메서드 정리 | |||
| 접근 제한자 | 반환 타입 | 메서드 이름 및 파라미터 | 설명 |
| default | boolean | preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) |
- 핸들러 실행 전의 인터셉터 지점
- false로 반환시 더 이상 실행하지 않습니다. |
| default | void | postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) |
- 성공적으로 핸들러 실행 후 인터셉터 지점
- 예외 발생 시 더 이상 실행하지 않습니다. |
| default | void | afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) |
- 뷰를 처리한 후 호출(Callback)합니다.
|