1、攔截器 HandlerInterceptor 類的做用mvc
SpringMVC 的攔截器相似於 Servlet 開發中的過濾器 Filter,用於對處理器進行預處理和後處理。post
2、怎麼使用呢?spa
1. 建立 Java 類實現 HandlerInterceptor 接口code
public class MyFilter implements HandlerInterceptor { public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { System.out.println("資源訪問以前 。。。"); return true; } public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { System.out.println("資源訪問以後,視圖渲染以前 。。。"); } public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { System.out.println("視圖渲染完以後 。。。"); } }
2. 修改 SpringMVC 的配置文件,加上下面這段配置blog
<mvc:interceptors> <bean class="com.common.MyFilter" /> </mvc:interceptors>
3、有一點須要注意的接口
咱們在實際開發中呢,能使用 Servlet 規範中的 Filter 過濾器的就用 Filter 實現,由於 HandlerInteceptor 只有在 SpringMVC 環境下才能使用。所以 Filter 是最通用的、最早應該使用的。如判斷是否登陸這種攔截器最好使用 Filter 來實現。資源