1.提交數據的處理spring
a)提交的域名稱和參數名稱一致mvc
http://localhost:8080/foward/hello.do?name=zhangsan
處理方法app
@RequestMapping(value = "/hello.do") public String hello(String name) { System.out.println(name); return "index.jsp"; }
b)若是域名稱和參數名稱不一致jsp
http://localhost:8080/foward/hello.do?uname=zhangsan
處理方法ide
@RequestMapping(value = "/hello.do") public String hello(@RequestParam("uname")String name) { System.out.println(name); return "index.jsp"; }
c)提交的是一個對象spa
要求提交的表單域名和對象的屬性名一致,參數使用對象便可code
http://localhost:8080/foward/user.do?name=zhangsan&pwd=123
處理方法對象
@RequestMapping(value = "/user") public String hello(User user) { System.out.println(user); return "index.jsp"; }
2.將數據顯示到UI層blog
第一種經過ModelAndView-須要視圖解析器域名
@Override public ModelAndView handleRequest(HttpServletRequest req, HttpServletResponse resp) throws Exception { ModelAndView mv = new ModelAndView(); mv.setViewName("hello"); mv.addObject("msg", "first spring mvc app"); return mv; }
第二種經過ModelMap來實現-不須要視圖解析器
@RequestMapping(value = "/hello.do") public String hello(String name, ModelMap mp) { System.out.println(name); //至關於request.setAttribute("name", name); mp.addAttribute("name", name); return "index.jsp"; }
ModelAndView和ModelMap的區別
相同點:都可以將數據封裝顯示到表現層
不一樣點:ModelAndView能夠指定跳轉的視圖,而ModelMap不能,ModelMap不須要配置視圖解析器