正文
注解或者在配置文件中手动设置。
代码示例:
public class MyInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
System.out.println("Pre Handle");
return true;
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
System.out.println("Post Handle");
}
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
System.out.println("After Completion");
}
}
配置拦截器:
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/*"/>
<bean class="com.example.MyInterceptor"/>
mvc:interceptor>
mvc:interceptors>
二、过滤器(Filter)
过滤器是Java EE规范的一部分,它属于Servlet容器的一部分,不仅仅限于SpringMVC。过滤器主要用于对请求和响应进行处理,通常用于日志记录、安全控制、数据压缩等操作。过滤器能够拦截请求,并在请求到达Servlet之前或响应返回之前进行处理。
特点:
-
Servlet规范的一部分
:过滤器是Servlet规范的一部分,独立于Spring框架,可以与任何Servlet容器一起使用。