Model、ModelMap和ModelAndView的用法總結
阿新 • • 發佈:2019-01-03
三者的區別
Model
Model是一個介面,它的實現類ExtendModelMap繼承自ModelMap類 public class ExtendModelMap extends ModelMap implements Model
ModelMap
ModelMap繼承LinkedHashMappublic class ModelMap extends LinkedHashMap<String ,Object>
ModelMap物件主要用於將資料傳遞到前端頁面。
//存放資料的具體的方法
addAttribute( String key,Object value);
JSP頁面獲取資料的方法如下:
<!--通過EL表示式來獲取ModelMap中存放的資料-->
${key}
ModelMap本身不能設定頁面的跳轉的URL地址或者物理跳轉地址,我們可以通過控制器方法的返回值來設定。
ModelAndView
ModelAndView指的是模型與檢視的集合,它的例項需要手動去建立 常用方法:- 設定轉向地址:
ModelAndView mav = new ModelAndView("viewname");
/*或者通過下面方式
* ModelAndView mav = new ModelAndView();
* mav.setViewName("viewname");
*/
- 將控制器方法中處理的資料傳遞到結果頁面,也就是把結果頁面上需要的資料放在ModelAndView物件中即可,其作用類似於request中的setAttribute()方法的作用,用來在一個請求過程中傳遞處理的資料。
ModelAndView mav = new ModelAndView();
//這兩種用法不一樣,需要在運用中體會
mav.addObject(String name;Object value);//向模型中新增屬性
mav.addObjext(Object value);//使用引數名生成模型新增屬性
參考文件:
https://blog.csdn.net/qq_41357573/article/details/84675535