낭만 프로그래머
Spring 에서 Interceptor 를 이용한 Session 처리 본문
1. Spring Interceptor 란?
필터와 유사한 개념으로 DispatcherServlet 이 Controller를 호출하기 전,후에 발생하는 이벤트다.
Interceptor 역시 필터와 마찬가지로 우선순위에 의하여 체이닝 된다
필터와 다른 점은 Request, Response 뿐만 아니라 여러가지 상황에서 처리가 가능 하며 Interceptor 역시 Bean이므로 다른 Bean을 DI 처리가 가능하다
2. 구현 방법
- HandlerInterceptorAdapter를 상속 받아서 preHandle(), postHandle(), afterCompletion() 중에 필요한 메소드를 Override하면 된다
preHandle() : controller가 수행하기 전
postHandle() : controller가 수행된 후 View를 호출하기 전
afterCompletion() : View 호출 완료 후
- servlet-context.xml 에 설정 추가
<mvc:interceptors> |
- AuthenticInterceptor.java 구현
public class AuthenticInterceptor extends HandlerInterceptorAdapter { LoginVO loginVO = (LoginVO) loginService.getAuthenticatedUser(); |
참조 : http://lionbonggu.tistory.com/12
'Java > Spring' 카테고리의 다른 글
Intellij에 Spring MVC 5 설치하기 (0) | 2021.09.28 |
---|---|
Spring Boot 기본 세팅 (DB + Mybatis + Log4j2) (0) | 2020.11.04 |
JSP에서 Invalid character 관련하여 400 에러가 발생시 (0) | 2020.04.14 |
Spring Boot 2.x 에서 HikariCP 문제점 해결 (0) | 2019.05.02 |
Eclipse (Neon)에 Spring 4 설치 (0) | 2016.09.30 |