•PathVariable注解类
•@RequestMapping注解中使用占位符的情况下,需要使用@PathVariable注解指定占位符参数
•RequestParam注解类
•在SpringMVC后台控制层获取参数的方式主要有两种,一种是request.getParameter("name"),另外一种是用注解@RequestParam直接获取
•有三个属性 value(参数名), required(是否需要传递参数),defaultValue(默认值)
•不带任何参数,表示需要的参数名与标注的变量名相同
•可以通过required=false或者true来要求@RequestParam配置的前端参数是否一定要传,false不传参也可触发方法
•参数类型尽量不要使用基本类型int,long等,而应该使用具体的对象类Integer、Long、String等
如图参数名可以省略
当参数名找不到时可以设置默认值
required设置为false时,使用基本类型不传递参数会报错,把null付给基本类型
•CookieValue注解类
•读取Cookies中的值,并且赋值给变量
•有三个属性 value, required,defaultValue,分别表示Cookie的名字,是否必须有这个Cookie值,如果没有默认值
•不带任何参数,表示需要的参数名与标注的变量名相同
•SessionAttributes注解类
•如果希望在多个请求之间公用某个模型属性数据,则可以在控制器类标注一个@SessionAttributes,SpringMVC会将模型中对应的属性暂存到HttpSerssion中
•除了SessionAttributes,还可以直接用原生态的request.getSession()来处理session数据
•ResponseBody注解类
·使用ResponseBody会跳过视图处理的部分
•用于将Controller的方法返回的对象,通过适当的HttpMessageConverter(转换器)转换为指定格式后,写入到Response对象的body数据区
•返回如json、xml等时使用
·HttpMessageConverter接口负责将请求信息转换为一个对象,将其输出为相应信息
•在springmvc配置文件中通过<mvc:annotation-driven />,给AnnotationMethodHandlerAdapter初始化7个转换器
读对应RequestBody注解,写对应ResponseBody注解
例子:
•RequestHeader注解类
•@RequestHeader注解,可以把Request请求header部分的值绑定到方法的参数上