1. 인터셉터 작성

  • MeasuringInterceptor.java 작성(kr.co.company.hello.Interceptor.MeasuringInterceptor.java)
package kr.co.company.hello.Interceptor;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;

public class MeasuringInterceptor extends HandlerInterceptorAdapter {

	@Override
	public void afterCompletion(HttpServletRequest request,
			HttpServletResponse response, Object handler, Exception ex)
			throws Exception {
		long beginTime = (long) request.getAttribute("mi.beginTime");
		long endTime = System.currentTimeMillis();
		
		System.out.println(request.getRequestURI() + "실행시간: " + (endTime - beginTime));
	}

	@Override
	public boolean preHandle(HttpServletRequest request,
			HttpServletResponse response, Object handler) throws Exception {
		request.setAttribute("mi.beginTime", System.currentTimeMillis());
		System.out.println("test");
		return true;
	}	
}

2. 인터셉터 설정(servlet-context.xml)

  • servlet-context.xml 소스 추가
	<!-- 인터셉터 설정 -->
	<mvc:interceptors>
		<mvc:interceptor>
			<mvc:mapping path="/bbs/**/"/>
			<bean id="measuringInterceptor" class="kr.co.company.hello.Interceptor.MeasuringInterceptor"></bean>
		</mvc:interceptor>
	</mvc:interceptors>