Spring MVC 数据模型

类型
Spring提供了以下几种方式传递模型数据:
ModelAndView :当action方法返回值类型为ModelAndView时,可以通过这个对象添加模型数据并指定视图名。
Map、Model: 用法基本一致,Model以及Map都可以直接在参数列表中声明,获取到request中的数据,并通过键值对形式存储或取出。
@SessionAttributes :   将模型中的某个属性暂存到 HttpSession 中,以便多个请求之间可以共享这个属性
@ModelAttribute :   方法入参标注该注解后, 入参的对象就会放到数据模型中,也可 用于重命名参数数据。

用法
    ModelAndView:
             @RequestMapping(value="/case" , method = RequestMethod.GET)
        public ModelAndView case1(){
                
                ModelAndView mav = new ModelAndView("res.jsp");
                mav.addObject("sex", "boy");
                
                return mav;
        }
ModelAndView能够指定视图的路径,并通过addObject设置键值对数据,通过方法返回此对象即可。内部其实就是个ModelMap和View对象,ModelMap用于存放数据,View用来指定跳转的路径。

Model、Map:
             
             @RequestMapping(value="/case2" , method = RequestMethod.GET)
        public String case2(Model model){
                model.addAttribute("key", "value");
                return "res.jsp";
        }
        
        @RequestMapping(value="/case3" , method = RequestMethod.GET)
        public String case3(Map<String, Object> map){
                map.put("key", "value");
                return "res.jsp";
        }

作用其实都一样,都是为了存储数据模型并跳转,ModelAndView能够实现,Model和Map也能够实现,两者在控制层的区别只体现在返回值这里。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值