springmvc之处理模型数据

1.springmvc为什么要处理模型数据


当我们采用映射路径映射到方法处理完数据时,需要将数据显示在页面上。然而springmvc框架提供可以将模型数据暴露给视图的解决方案。

2.springmvc提供了哪些处理模型数据的方案


① ModelAndView :当处理方法返回值类型为ModelAndView时,方法体即可通过该对象添加模型数据。

② @ModelAttribute注解 : 在方法入参标记了该注解后,入参的对象就会放到数据模型中。

③ Map、Model、ModelMap :方法返回时,数据会自动添加到模型中。

④ @SessionAttribute : 将模型中的某个属性暂时存到HttpSession中,为了使多个请求之间可以共享这个属性。

3.ModelAndView


ModelAndView中既包含视图信息,又包含模型数据信息。而ModelAndView也是通过ModelMap来实现的。

使用addObject方法来添加模型数据。使用setView方法来指定一个视图对象或者视图名称。

4.@ModelAttribute注解



关键点是模型数据会赋给User的入参,然后再根据HTTP请求消息进一步填充覆盖user对象。在准备对视图进行渲染前,springmvc会进一步将模型中的数据转储到视图的上下文并暴露给视图对象。


在访问控制器中的任何一个请求处理方法前,springmvc先执行该方法,并将返回值以user为键添加到模型中去。

5.@SessionAttribute


这个注解的作用是将处理方法对应的模型属性透明的保存到HttpSession中。前提是HttpSession中已经事先存在一个对应的模型,否则就会报错。

解决办法:

那么我们可以利用@ModelAttribute注解在方法上标注的特性解决。可以在控制器中处理任何一个请求前,先向隐含模型中添加一个名为user的模型属性。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值