SpringMVC 學習-攔截器 HandlerInterceptor 類

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 來實現。資源

相關文章
相關標籤/搜索