第一个注解

RequestParam注解
作用:把请求中指定名称的参数给控制器中的形参赋值。
属性:value:请求参数中的名称。
required:请求参数中是否有必要提供此数,默认值为true,表示必须提供,如果不提供将报错。
在anno.jsp中
<a href="anno/testRequestParam?name=哈哈">RequestParam</a>
在AnnoController.java中
@RequestMapping("/testRequestParam")
public String testRequestParam(@RequestParam(name="name") String username) {
    System.out.println(username);
    return "success";
}

第二个注解

RequestBody
作用:
用于获取请求体内容。直接使用得到是key=value&key=value...结构的数据
get请求方式不使用。get请求没有请求体

第三个注解

PathVariable
作用:
用于绑定url中的占位符。例如请求url中/delete/{id},这个{id}就是url占位符。
url支持占位符是spring3.0之后加入的。是springmvc支持rest风格URL的一个重要标志。
属性:
value:用于指定url中占位符名称。
required:是否必须提供占位符。

我们先来看一下restful编程风格

在anno.jsp中
<a href="anno/testPathVariable/10">testPathVariable</a>
在AnnoController.java中
@RequestMapping("/testPathVariable/{sid}")
public String testPathVariable(@PathVariable(name="name") String id) {
    System.out.println(id);
    return "success";
}

第四个注解

HiddentHttpMethodFilter过滤器
作用:由于浏览器form表单只支持GET与POST请求,而DELETE、PUT等method并不支持,
Spring3.0添加了一个过滤器,可以将浏览器请求改为指定的请求方式,发送给我们的控制器方法,
使得支持GET、POST、PUT与DELETE请求。

第五个注解

RequestHeader
作用:用于获取请求消息头
属性:value:提供消息头名称

第六个注解

CookieValue
作用:用于把指定Cookie名称的值传入控制器方法参数。

第七个注解

ModelAttribute
作用:可以用于修饰方法和参数。
出现在方法上,表示当前方法会在控制器的方法执行之前,先执行。

第八个注解

SessionAttributes
作用:用于多次执行控制器方法间的参数共享。