controller 层 怎么传数据到页面 modelandview 和 modelmap

@RequestMapping(value="/mad/showData_1.do")
public ModelAndView showData_1(){
   String message = "这个是要传递的数据";
   /*其中第一个参数为url,第二个参数为要传递的数据的key,第三个参数为数据对象。在这里要注意的是:数据是默认被存放在request中的。*/
   return new ModelAndView("/WEB-INF/jsp/showData.jsp","message",message);
}
前台页面获取方式: 
request:${requestScope.message}


3 > 数据modelAndView返回一个集合

该处理方式和上面的处理方式一直,因为modelAndView接受的数据类型是Object的,集合也是一样的处理方式

示例:

//使用modelAndView对象将数据传递到前台。
//传递多个参数(不同类型的)
   @RequestMapping(value="/mad/showData_2.do")
   public ModelAndView showData_2(){
      System.out.println("showData_2");
      String message = "这个是要传递的数据";
      User user = new User("张三", 12, new Date());
      List<User> us= new ArrayList<User>();
      us.add(new User("张三", 12, new Date()));
      us.add(new User("张四", 13, new Date()));
      us.add(new User("张五", 14, new Date()));
      ModelAndView mad = new ModelAndView("/WEB-INF/jsp/showData.jsp");
      //将数据存入modelMap
      mad.addObject("message", message);
      mad.addObject(user);//默认为类名的首字母小写
      mad.addObject("users", us);
      return mad;
  }
前台页面获取方式:

request:${requestScope.message}<br/>
<c:forEach items="${requestScope.users }"var="u">
      ${u.name }-${u.age }-${u.birth }<br/>
   </c:forEach>




5、使用ModelMap传递多个数据到jsp中。

在方法的参数列表中添加形参 ModelMap map,spring 会自动创建ModelMap对象。

然后调用map的put(key,value)或者addAttribute(key,value)将数据放入map中,spring会自动将数据存入request。

示例:

//使用modelMap对象将数据传递到前台。
   //传递多个参数(不同类型的)
   @RequestMapping(value="/mad/showData_3.do")
   public String showData_3(ModelMap map){
      System.out.println("showData_3");
      String message = "这个是要传递的数据";
      User user = new User("张三", 12, new Date());
      List<User> us= new ArrayList<User>();
      us.add(new User("张三", 12, new Date()));
      us.add(new User("张四", 13, new Date()));
      us.add(new User("张五", 14, new Date()));
      //将数据存入modelMap
      map.put("message", message);
      map.addAttribute("user", user);
      map.put("users", us);
      return"/WEB-INF/jsp/showData.jsp";
   }
页面调用:

request:${requestScope.message}<br/>
   session:${sessionScope.message }<br/>
   application:${applicationScope.message}<br/>
   <hr/>
   <h1>ModelMap中的数据</h1>
   ${requestScope.message}<br/>
   ${requestScope.user.name}<br/>
   <p>列表</p>
   <c:forEach items="${requestScope.users}" var="u">
      ${u.name }-${u.age }-${u.birth }<br/>
   </c:forEach>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值