Spring Interceptor

오의석·2022년 10월 20일

스프링

목록 보기
9/16

1. 종류

(1) preHandler

DispatcherServlet -> Controller

(2) postHandler

DispatcherServlet <- Controller

(3) afterCompletion

화면 출력까지 끝난 후
DispatcherServlet <- View

2. servlet-context.xml 설정

<beans:bean id="confirm" class="com.main.interceptor.Interceptor.confirm"/>
	<interceptors>
		<interceptor>
			<mapping path="/board/*"/>
			<exclude-mapping path="/user/log*"/>
			<beans:ref bean="confirm"/>
		</interceptor>
	</interceptors>
<beans:bean> :  id와 class 위치
<interceptors> : 해당 url일 때 동작 
<beans:ref> : 인터셉터가 작동했을 때 실행되는 클래스

3. 사용

public class confirm implements HandlerInterceptor {
	@override
	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throsw Exception {
		/**/
		return true;
	}
}

false를 return 하면 해당 컨트롤러로 이동하지 않는다.
true면 해당 컨트롤러로 이어서 이동한다.

TIP

Filter vs Interceptor vs AOP
[외부 | Spring내부 | 웹 내부]
즉 Filter와 Interceptor는 Spring 외부,내부를 기준으로 나누면 된다.
Interceptor와 AOP는 웹 내부에서 동작하는 지, 안한 지를 기준으로 하면 된다.

profile
끊임없이 나아가는 사람이 되어볼게요.

0개의 댓글