spring -mvc注解

<div class="iteye-blog-content-contain" style="font-size: 18px">

 ①@requestParame(value="pageNo" ,required ="false",default="1" ):用于方法参数前面,表示要接受的方法参数,里面的两个属性,表示:value 表示请求的参数为pageNo,required:表示请求的参数是否是必须的,默认的false,如果设置为true,表示请求的方法上面必须有这个参数,没有的话会报404错误。default:表示请求参数的默认值,如果这个参数没有值时,使用默认值来代替。如果请求参数类似于url?role=admin&rule=user,则实际roleList参数入参的数据为“admin,user”,即多个数据之间使用“,”分割;我们应该使用如下方式来接收多个请求参数:public String requestparam8(@RequestParam(value="list") List<String> list)或者用list换成数组也可以。

②:@CookieValue用于将请求的Cookie数据映射到功能处理方法的参数上。public String test(@CookieValue(value="JSESSIONID", defaultValue="") String sessionId) --摘自开涛博客直接将 JSESSIONID的值绑定到sessionId中,对于Java来说无非就是这个步骤有spirng-mvc帮助我们做了Cookie[] cookies = request.getCookies();//这样便可以获取一个cookie数组

for (Cookie cookie : cookies){
     cookie.getName(); // get the cookie name
     cookie.getValue(); // get the cookie value
}
 三@RequestHeader用于将请求的头信息区数据映射到功能处理方法的参数上。 @RequestHeader用于将请求的头信息区数据映射到功能处理方法的参数上。  

@ModelAttribute绑定请求参数到命令对象

@ModelAttribute一个具有如下三个作用:

①绑定请求参数到命令对象:放在功能处理方法的入参上时,用于将多个请求参数绑定到一个命令对象,从而简化绑定流程,而且自动暴露为模型数据用于视图页面展示时使用;

  1. public String test1(@ModelAttribute("user") UserModel user)  --表示请求的参数绑定到user命令参数上面,页面上实现数据回现,数据自动的绑定

②暴露表单引用对象为模型数据:放在处理器的一般方法(非功能处理方法)上时,是为表单准备要展示的表单引用对象,如注册时需要选择的所在城市等,而且在执行功能处理方法(@RequestMapping注解的方法)之前,自动添加到模型对象中,用于视图页面展示时使用;

 

  1. @ModelAttribute("user")
  2. public user test1( UserModel user)  --放在所有处理器的方法最上面,该处理器的所有的方法再执行之前,自动添加到model对象中,用于数据页面的展示与回现。

③暴露@RequestMapping方法返回值为模型数据:放在功能处理方法的返回值上时,是暴露功能处理方法的返回值为模型数据,用于视图页面展示时使用。

 ④对于spring4要实现rest风格的代码以前我们使用的是在方法上面直接加@response body 表示可以直接使用jackson插件对map.list.bean进行解析成json对象,现在我们可以在我们使用的类上面直接加@RestController其功能与原来的一样。

猜你喜欢

转载自18511334010.iteye.com/blog/2346504