(四)Spring MVC 数据绑定

绑定数据的注解:

1.@RequestParam,绑定单个请求数据,可以是URL中的数据,表单提交的数据或上传的文件; 
2.@PathVariable,用来获得请求url中的动态参数; 
3.@CookieValue,绑定Cookie数据; 
4.@RequestHeader,绑定请求头数据; 
5.@ModelAttribute,绑定数据到Model; 
6.@SessionAttributes,绑定数据到Session; 
7.@RequestBody,用来处理Content-Type不是application/x-www-form-urlencoded编码的内容,例如application/json, application/xml等; 
8.@RequestPart,绑定“multipart/data”数据,并可以根据数据类型进项对象转换;

 

1.@RequestParam:绑定单个请求数据,可以是URL中的数据,表单提交的数据或上传的文件

   在SpringMVC后台控制层获取参数的方式主要有两种,一种是request.getParameter("name"),另外一种是用注解@RequestParam直接获取。

   Spring会自动根据参数名字封装进入,我们可以直接拿这个参数名来用

1  public ModelAndView paramBind(HttpServletRequest request, @RequestParam("urlParam") String urlParam){}

2.@PathVariable:用来获得请求url中的动态参数

1  @RequestMapping(value="/user/{userId}/roles/{roleId}",method = RequestMethod.GET)  
2      public String getLogin(@PathVariable("userId") String userId,@PathVariable("roleId") String roleId){}

3.@CookieValue: 从Http请求头中的Cookie提取指定的某个Cookie.

1 public String cookieBind(HttpServletRequest request, Model model, @CookieValue(value="JSESSIONID", defaultValue="") String jsessionId){}

4.@RequestHeader:可以把Request请求header部分的值绑定到方法的参数上。 

1 public String requestHeaderBind(HttpServletRequest request, Model model, @RequestHeader(value="User-Agent", defaultValue="") String userAgent){}

5.@ModelAttribute:绑定数据到模型中。

1 public String modelAutoBind(HttpServletRequest request, Model model, AccountModel accountModel){}

6.@SessionAttributes:绑定数据到Session

1 在controller类上添加@SessionAttributes(value = "sessionaccountmodel")

7.@RequestBody:接收Json对象字符串

1 public void saveUser(@RequestBody List<User> users) { }

 

posted @ 2017-06-13 15:30  北方大地  阅读(139)  评论(0编辑  收藏  举报