springMVC中Model和ModelAndView的区别

本文通过示例代码对比了Spring MVC框架中ModelAndView与Model的使用方式及特点。ModelAndView集成了模型和视图,需手动创建并添加属性;Model则随每次请求自动提供,直接添加属性即可。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

全文转载自:https://blog.youkuaiyun.com/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的名称.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值