配置檢視 BeanNameViewResolver 解析器
我們可以通過配置直接轉發的頁面,而不用經過handler(controller)的方法。
<!-- 配置直接轉發的頁面,無需經過handler的方法 -->
<mvc:view-controller path="/success" view-name="success"/>
<!-- 原來的配置還可以使用需要加上下面配置 -->
<mvc:annotation-driven />
如果我們不加上mvc:annotation-driven標籤,那我們以前的配置就不能再繼續使用了,具體原因,以後我們再詳細的學習。
俗稱 :自定義檢視
<!-- 配置檢視 BeanNameViewResolver 解析器: 使用檢視的名字來解析檢視 -->
<!-- 通過 order 屬性來定義檢視解析器的優先順序, order 值越小優先順序越高 -->
首先實現檢視view 介面
@RequestMapping("/testView")
public String testView(){
System.out.println("testView");
return "helloView";
}
import java.util.Date;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.View;
/*
在handle 中定義相應的對映
*/
@Componentpublic class HelloView implements View{
@Override
public String getContentType() {
return "text/html";
}
@Override
public void render(Map<String, ?> model, HttpServletRequest request,
HttpServletResponse response) throws Exception {
response.getWriter().print("hello view, time: " + new Date());
}
}
<!-- 配置檢視 BeanNameViewResolver 解析器: 使用檢視的名字來解析檢視 -->
<!-- 通過 order 屬性來定義檢視解析器的優先順序, order 值越小優先順序越高 -->
<bean class="org.springframework.web.servlet.view.BeanNameViewResolver">
<property name="order" value="100"></property>
</bean>
***一定要設定order .
InternalResourceViewResolver 的優先順序最低,保證它最後執行