Springmvc ModelAndView原理及用法詳解
ModelAndView以org.springframework.ui.ModelMap的形式來保持模型數(shù)據(jù),通過構(gòu)造方bai法傳入的或者通過實例方法添加的模型數(shù)據(jù)都將添加到這個ModelMap中。至于ModelMap中保持的模型數(shù)據(jù)將會在視圖渲染階段,由具體的View實現(xiàn)類來獲取并使用。
我們需要為添加到ModelAndView的一組或者多組模型數(shù)據(jù)提供相應的鍵(Key),以便具體的View實現(xiàn)類可以根據(jù)這些鍵獲取具體的模型數(shù)據(jù),然后公開給視圖模板。通常,模型中的數(shù)據(jù)對應的鍵需要與視圖模板中的標志符相對應
ModelAndView 是 SpringMVC 為我們提供的一個對象,該對象也可以用作控制器方法的返回值。
該對象中有兩個方法
- addObject(String attributeName,Object attributeValue):添加對象到該模型中
- 可以在頁面直接用el表達式獲取對象
- setViewName(@Nullable String viewName):設(shè)置邏輯視圖名稱,視圖解析器會根據(jù)名稱前往指定的視圖
示例
控制器代碼
/**
* 返回ModeAndView
* @return
*/
@RequestMapping("/testReturnModelAndView")
public ModelAndView testReturnModelAndView() {
ModelAndView mv = new ModelAndView();
mv.addObject("username", "張三");
mv.setViewName("success");
return mv;
}
jsp取值
${requestScope.username}
注意:我們在頁面上上獲取使用的是 requestScope.username 取的,所以返回 ModelAndView 類型時,瀏覽器跳轉(zhuǎn)只能是請求轉(zhuǎn)發(fā)。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot Security整合JWT授權(quán)RestAPI的實現(xiàn)
這篇文章主要介紹了SpringBoot Security整合JWT授權(quán)RestAPI的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-11-11
基于Properties實現(xiàn)配置數(shù)據(jù)庫驅(qū)動
這篇文章主要介紹了基于Properties實現(xiàn)配置數(shù)據(jù)庫驅(qū)動,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-05-05
@insert mybatis踩坑記錄,實體接收前端傳遞的參數(shù)
這篇文章主要介紹了@insert mybatis踩坑記錄,實體接收前端傳遞的參數(shù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07
一篇文章帶你使用SpringBoot基于WebSocket的在線群聊實現(xiàn)
這篇文章主要介紹了一篇文章帶你使用SpringBoot基于WebSocket的在線群聊實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-10-10
SpringBoot中@ConfigurationProperties實現(xiàn)配置自動綁定的方法
本文主要介紹了SpringBoot中@ConfigurationProperties實現(xiàn)配置自動綁定的方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-02-02
Java調(diào)用Pytorch模型實現(xiàn)圖像識別
這篇文章主要為大家詳細介紹了Java如何調(diào)用Pytorch實現(xiàn)圖像識別功能,文中的示例代碼講解詳細,具有一定的學習價值,感興趣的小伙伴可以了解一下2023-06-06

