spring MVC 學習(四)---攔截器,視圖解析器

1.接口HandlerInterceptorhtml

該接口包含3個方法,分別是preHandle,postHandle,afterCompletion,分別表明着執行前,執行後,執行完成要執行的方法,其中proHandle若是返回false表明中斷後續動做。web

//在執行目標程序以前執行,dang放回false就再也不向後執行,但還會執行afterCompletion
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
            throws Exception {
        // TODO Auto-generated method stub
        return false;
    }
    //在執行目標程序以後執行
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
            ModelAndView modelAndView) throws Exception {
        // TODO Auto-generated method stub

    }
    //在整個請求處理完後執行
    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
            throws Exception {
        // TODO Auto-generated method stub

    }

2.視圖解析器spring

官方文檔給出了經常使用的視圖解析器:spring-mvc

image

其中咱們經常使用的可能就是上面紅框中的,不過在通常在使用的是jsp的話,使用第一個紅框中的就能夠瞞住絕大部分需求了。mvc

InternalResourceViewResolver通常的配置文件以下spring-mvc.xmljsp

<bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
    <property name="prefix" value="/WEB-INF/jsp/"/>
    <property name="suffix" value=".jsp"/>
</bean>

因爲InternalResourceViewResolver繼承了UrlBasedViewResolver,在UrlBasedViewResolver中有屬性contentType,該屬性用來設置視圖中的context type,通常建議加上:post

<property name="contentType" value="text/html;charset=utf-8" />
相關文章
相關標籤/搜索