Spring MVC返回数据到页面有几种不一样的方式,它们各自适用的状况也不一样,下面简单总结一下。html
对于每种方式都给出Controller中的相应方法。java
首先仍是页面user_add.jsp。它既是发出请求的页面,也是接收返回结果的页面:spring
<%@ page language="java" import="java.util.*" contentType="text/html;charset=utf-8"%> <html> <head> <title></title> </head> <body> <h1>添加用户信息4</h1> <form action="user/add4.do" method="post"> <input type="submit" value="提交"> </form> ${personId } </body> </html>
一、经过request对象:app
@RequestMapping("/add.do")
public String add(HttpServletRequest request){
request.setAttribute("personId",12);
return "user_add";
}jsp
二、经过ModelAndView对象:post
@RequestMapping("/add.do")
public ModelAndView add(){
ModelAndView mav = new ModelAndView("user_add");
mav.addObject("personId", 12);
return mav;
}spa
三、经过Model对象:code
@RequestMapping("/add.do")
public String add(Model model){
model.addAttribute("personId", 12);
return "user_add";
}orm
四、经过Map对象:htm
@RequestMapping("/add.do") public String add(Map<String,Object> map){ map.put("personId", 12); return "user_add"; }