SpringMVC使用mvc:view-controller直接轉發頁面
阿新 • • 發佈:2019-01-31
配置直接轉發的頁面(如首頁)
<mvc:view-controller/>此標籤用以在springMVC配置檔案中實現路徑的轉發和資源的請求。
使用場景:一般springmvc都是經過Controller,但是當我們不想經過Controller,而是直接訪問檢視的時候。就可以通過它。
<mvc:view-controller path="" view-name=""/>標籤的作用:
對應WEB-INF目錄下面的JSP頁面,我們知道是不能直接使用URL訪問到。需要通過在控制器中做轉發對映訪問,對應一些我們不需要其他操作的JSP頁面(首頁),我們可以使用它來配置,這樣就可以不通過控制器去做轉發對映訪問jsp頁面
path:表示請求的路徑,
view-name:表示可為需要對映的檢視名,或者為重定向路徑,輸入redirect:路徑,然後會匹配requestmapping路徑。
其中path會首先匹配requestmapping路徑,然後再進行view-name的資源尋找對應的jsp頁面。
注意:有這個配置後,正常的需要通過Controller類的方法的Url就會訪問出錯,解決方法加<mvc:annotation-driven />配置
1. 測試1
<mvc:view-controller path="/" view-name="index"/> 或者 <mvc:view-controller path="" view-name="index"/>
2. 測試2
<mvc:view-controller path="/" view-name="index"/>
或者
<mvc:view-controller path="" view-name="index"/>
3. 測試3
<mvc:view-controller path="/" view-name="index"/>
或者
<mvc:view-controller path="" view-name="index"/>
測試結果一樣:
4. 重定向測試4
<mvc:view-controller path="/" view-name="redirect: /sshweb/users"/> 或者 <mvc:view-controller path="" view-name="redirect: /sshweb/users"/>
UserController 類:
@RequestMapping(value = "/users", method = RequestMethod.GET)
public String userlist(Model model) {
List<User> userlist = userService.getAllList();
model.addAttribute("userlist", userlist);
return "user-list";
}
訪問後為: