44SpringMVC - 参数绑定(Model / ModelMap)

简介: 44SpringMVC - 参数绑定(Model / ModelMap)

Model

除了ModelAndView以外,还可以使用Model来向页面传递数据,

Model是一个接口,在参数里直接声明model即可。

如果使用Model则可以不使用ModelAndView对象,Model对象可以向页面传递数据,View对象则可以使用String返回值替代。

不管是Model还是ModelAndView,其本质都是使用Request对象向jsp传递数据。

/**
 * 根据id查询商品,使用Model
 * 
 * @param request
 * @param model
 * @return
 */
@RequestMapping("/itemEdit")
public String queryItemById(HttpServletRequest request, Model model) {
  // 从request中获取请求参数
  String strId = request.getParameter("id");
  Integer id = Integer.valueOf(strId);
  // 根据id查询商品数据
  Item item = this.itemService.queryItemById(id);
  // 把结果传递给页面
  // ModelAndView modelAndView = new ModelAndView();
  // 把商品数据放在模型中
  // modelAndView.addObject("item", item);
  // 设置逻辑视图
  // modelAndView.setViewName("itemEdit");
  // 把商品数据放在模型中
  model.addAttribute("item", item);
  return "itemEdit";
}

ModelMap

ModelMap是Model接口的实现类,也可以通过ModelMap向页面传递数据

使用Model和ModelMap的效果一样,如果直接使用Model,springmvc会实例化ModelMap。

/**
 * 根据id查询商品,使用ModelMap
 * 
 * @param request
 * @param model
 * @return
 */
@RequestMapping("/itemEdit")
public String queryItemById(HttpServletRequest request, ModelMap model) {
  // 从request中获取请求参数
  String strId = request.getParameter("id");
  Integer id = Integer.valueOf(strId);
  // 根据id查询商品数据
  Item item = this.itemService.queryItemById(id);
  // 把结果传递给页面
  // ModelAndView modelAndView = new ModelAndView();
  // 把商品数据放在模型中
  // modelAndView.addObject("item", item);
  // 设置逻辑视图
  // modelAndView.setViewName("itemEdit");
  // 把商品数据放在模型中
  model.addAttribute("item", item);
  return "itemEdit";
}
目录
相关文章
SpringMVC入门到实战------5、域对象共享数据 Request、Session、Application、Model、ModelAndView、Map、ModelMap的详细使用及代码实例
这篇文章详细解释了在IntelliJ IDEA中如何使用Mute Breakpoints功能来快速跳过程序中的后续断点,并展示了如何一键清空所有设置的断点。
SpringMVC入门到实战------5、域对象共享数据 Request、Session、Application、Model、ModelAndView、Map、ModelMap的详细使用及代码实例
|
4月前
【SpringMVC】SpringMVC方式,向作用域对象共享数据(ModelAndView、Model、map、ModelMap)
【SpringMVC】SpringMVC方式,向作用域对象共享数据(ModelAndView、Model、map、ModelMap)
55 1
|
10月前
|
存储 前端开发 Java
SpringMVC里的Model、Map、ModelMap以及ModelAndView
SpringMVC里的Model、Map、ModelMap以及ModelAndView
191 0
|
前端开发 Java Spring
Spring MVC 中处理模型数据 (一)ModelAndView ModelMap @sessionAttributes
1、目标方法的返回值可以是 ModelAndView 类型。 * 其中可以包括视图和模型信息 * SpringMVC 会把 ModelAndView 的 model 中数据放到 request 域对象中。 2、目标方法可以添加Map 类型(实际上也可以是Model类型 或 ModelMap类型)的参数。 3、@sessionAttributes 除
2613 0
|
4月前
|
设计模式 前端开发 JavaScript
Spring MVC(一)【什么是Spring MVC】
Spring MVC(一)【什么是Spring MVC】
|
3月前
|
设计模式 前端开发 Java
【Spring MVC】快速学习使用Spring MVC的注解及三层架构
【Spring MVC】快速学习使用Spring MVC的注解及三层架构
36 1
|
3月前
|
前端开发 Java 应用服务中间件
Spring框架第六章(SpringMVC概括及基于JDK21与Tomcat10创建SpringMVC程序)
Spring框架第六章(SpringMVC概括及基于JDK21与Tomcat10创建SpringMVC程序)
|
3月前
|
XML Java 数据格式
SpringMVC的XML配置解析-spring18
SpringMVC的XML配置解析-spring18
|
3月前
|
应用服务中间件
从代码角度戳一下springMVC的运行过程-spring16
从代码角度戳一下springMVC的运行过程-spring16