springMVC中Model和ModelAndView的区别

全文转载自:https://blog.csdn.net/hjh_walker/article/details/56396183

只是为了方便自己随时查看,感谢原创博主。

@Controller("Test")

public class Test{

     @RequestMapping("")

     public ModelAndView one(){`这里写代码片`

        ModelAndView mav = new ModelAndView("index");

    mav.addObject("name","aaa"); mav.addObject("sex","男");

         return mav; //跳转到某一路径下的index.jsp页面

     }

    @RequestMapping("")

        public String two(Model model){

         model.addAttribute("name","aaa");

        model.addAttribure("sex", "男");

         return "index";       ///跳转到某一路径下的index.jsp页面

}

}

通过上面的代码展示就可以基本看出这两者的区别,ModelAndView可以说是视图和模型的结合体,但是在每次使用的时候都需要我们自己创建,并将想要目的页面的逻辑视图名作为参数,并通过addObject()方法添加属性。

而Model是每个请求中都会自带的,我们可以通过addAttribute()方法添加属性,在跳转页面时直接返回该页面的逻辑视图名。

-------------------------------

Model是每次请求中都存在的默认参数,利用其addAttribute()方法即可将服务器的值传递到jsp页面中;

ModelAndView包含model和view两部分,使用时需要自己实例化,利用ModelMap用来传值,也可以设置view的名称.


你可能感兴趣的:(springMVC,Model,ModelAndView)