ch12 Spring MVC数据绑定和响应(赵辰浩)


2.1 默认类型数据绑定

1. findById1(HttpServletRequest request)
2. findById2(String userid, Model model)
3. findById3(String userid, HttpSession session)
4. findById4(String userid, HttpServletResponse response)
5. 默认类型数据绑定("/findById")

2.2.1 简单数据类型绑定

6. getUsernameAndId?username=赵辰浩&id=2 getUserNameAndId(String username, Integer id)
7. get用户名AndId?用户名=赵辰浩&id=3 getUser用户名和Id(String 用户名, Integer id)

2.2.2 参数别名的设置 @RequestParam

8. getUsername 取默认值 方法getUsername(@RequestParam(value = "name", defaultValue = "赵辰浩") String username)
9. getUsername?name=杜甫 方法getUsername(@RequestParam(value = "name", defaultValue = "赵辰浩") String username)

2.2.3 路径变量的设置@PathVariable

10. user/张三 @RequestMapping("/user/{name}") getPathVariable(@PathVariable("name") String username
11. user/赵辰浩 @RequestMapping("/user/{name}") getPathVariable(@PathVariable("name") String username

2.3 POJO绑定

12. 用户注册 @RequestMapping("/registerUser")

2.4 自定义类型转换器

13. getBirthday?birthday=2001-12-12 (基于XML配置自定义转换器)
14. get生日?生日=2001-12-23 (日期格式注解)

3.1 复杂数据绑定--数组绑定

15. 提交图书ISBN列表--(数组) postISBNs(String[] ISBNs, Model model)

3.2 复杂数据绑定--List绑定

16. 提交图书ISBN列表--(List) postISBNs(@RequestParam("ISBNs") List<String> ISBNs)

3.3 复杂POJO绑定

17. order.jsp => /findOrderWithUser2 属性为对象类型的数据绑定 findOrderWithUser(User2 user)
18. orders.jsp => /showOrders 属性为List类型的数据绑定 showOrders(User3 user)
19. order_info.jsp => /orderInfo 属性为Map类型的数据绑定 getOrderInfo(Order3 order)

3.4 JSON数据绑定

20. @RequestBody 提交单个商品:/postProduct 提交多个商品:/postProductList

4 页面跳转: 跳转到WEB-INF\pages\register.jsp

21. 返回值为void类型的页面跳转: 跳转到 前缀+方法映射路径+后缀
22. 返回值为String类型的页面跳转(不携带数据):return "register";
23. 返回值为String类型的页面跳转(转发):return "forward:orders.jsp"
24. 返回值为String类型的页面跳转(重定向):return "redirect:http://www.itheima.com";
25. 返回值为String类型的页面跳转(Request携带数据):return "register";
26. 返回值为String类型的页面跳转(Model携带数据):return "register";
27. 返回值为ModelAndView类型的页面跳转:modelAndView.setViewName("register");return modelAndView;

5 数据回写

28. 普通字符串的回写 showDataByResponse(HttpServletResponse response)
29. 对象数据转换成JSON数据回写 showDataByJSON(HttpServletResponse response)
30. 对象数据转换成JSON数据后的回写 @ResponseBody

返回课程首页