good_da22 's devLog

Back-End/Spring Framework

Interceptor

good_da22 2022. 11. 3. 23:05

Interceptor


HandlerInterceptor를 통한 요청 가로채기


Controller가 요청을 처리하기 전/후 처리

로깅, 모니터링 정보 수집, 접근 제어 처리 등의 실제 Business Logic과는 분리되어 처리해야 하는 기능들을 넣고 싶을 때 유용

interceptor 여러 개 설정 가능, 순서 주의


HandlerInterceptor 제공 default method

  • boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)

    • fasle를 반환하면 request를 바로 종료
  • void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView)

    • Controller 수행 후 호출
  • void afterCompletion(HttpServletRequest request, HttpServlet response, Object Handler, Exception ex)

    • view를 통해 클라이언트에 응답을 전송한 뒤 실행

HandlerInterceptor 인터페이스 구현을 통해 사용

servlet-context.xml 파일에서 interceptor 설정을 통해 interceptor를 사용할 주소 mapping

'Back-End > Spring Framework' 카테고리의 다른 글

SpringBoot & Swagger  (0) 2022.11.14
REST API  (0) 2022.11.03
Spring Web MVC 2  (0) 2022.10.27
Spring Web MVC  (0) 2022.10.27
AOP (Aspect Oriented Programming)  (0) 2022.10.19