ModelAndView

本文介绍了Spring MVC处理模型数据的相关内容。Spring MVC提供多种途径输出模型数据,可通过ModelMap及Model存储,若方法入参为Map或Model类型,能访问和添加数据。还可利用addAttribute()或put方法将服务器值传至页面。此外,讲解了ModelAndView类,用于存储结果数据和设置视图。

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

一、处理模型数据

概念:
Spring MVC 提供了几种途径输出模型数据,模型数据主要输出到页面

ModelMap及 Model
Spring MVC 在内部使用了一个 org.springframework.ui.Model 接口存储模型数据
Spring MVC 在调用方法前会创建一个隐含的模型对象作为模型数据的存储容器。
如果方法的入参为 Map 或 Model类型,Spring MVC 会将隐含模型的引用传递给这
些入参。 在方法体内,开发者可以通过这个入参对象访问到模型中的所有数据,
也可以向模型中添加新的属性数据
Model是每次请求中都存在的默认参数

返回模型数据

利用model其addAttribute()方法或者map的put方法即可将服务器的值传递到页面中
用到Model model必须返回视图 直接return字符串返回视图,
返回的参数放在model里面
页面用EL表达式${获取返回的参数key}

二、ModelAndView

概念

使用ModelAndView类用来存储处理完后的结果数据,以及显示该数据的视图。
从名字上看ModelAndView中的Model代表模型,View代表视图,
这个名字就很好地解释了该类的作用
添加模型数据 :
ModelAndView addObject(String attributeName, Object attributeValue)
ModelAndView addAllObject(Map<String, ?> modelMap)
设置视图:
void setView(View view)(自定义视图)
void setViewName(String viewName)。

下面两种写法是效果一样的

模板文件里写
${name!}
${sex!}
${city!}
  @RequestMapping("/getModel")
    public String getModel(Model model){
        model.addAttribute("name","njl");
        model.addAttribute("sex","男");
        model.addAttribute("city","北京");
        return "/login/getModel";
    }


    @RequestMapping("/getModelAndView")
    public ModelAndView getModelAndView(){
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.setViewName("/login/getModelAndView");
        modelAndView.addObject("name","njl");
        modelAndView.addObject("sex","男");
        modelAndView.addObject("city","北京");
        return modelAndView;
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

NeilNiu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值