1. @RequestMapping
1. @RequestMapping
含义表示的是,请求的路径的注解,用法为:在方法或者在一个组件中添加@RequestMapping(“/namepath”)。
在括号里边的属性值有:method,value,name,path,consumes,headers,params,produces
method属性值:表示的是,指定请求方式。可以有post请求,get请求,delete请求,head、patch,trace,options,put 请求,常用的就是post、get、delete和put请求。
实例:可以有多个请求一起写。
@RequestMapping(method={RequestMethod.DELETE,RequestMethod.GET})
public String vaString(){
return null; }name,path和value属性值:这三个的作用其实相同,都表示这个标识请求的路径,在只有一个请求的路径,没有指定其他的值的时候,value可以省略,多个属性值,value不能省略,多个属性值之间采用 “ , “ 逗号分隔开。
实例:
//@RequestMapping(path="/namepath")
@RequestMapping("/namepath")
@RequestMapping(value="/namepath",method={RequestMethod.PUT})
public String test(){
return null;}consumes属性值:指定处理请求的提交内容类型(Content-Type)比如说 application/json, text/html;
@RequestMapping(value="/namepath",consumes="application/json")
public String test(){
return null;
}//我们可以省略这个@requestbody这个注解,指定了json格式数据produces属性值:它的作用是指定返回值类型,不但可以设置返回值类型还可以设定返回值的字符编码;
实例:
@RequestMapping(value = "/namepath", method = RequestMethod.GET, produces="application/json")
public String test(){
return null;
}
consumes和produces的关系:
1. consumes: 指定处理请求的提交内容类型(Content-Type),例如application/json, text/html;
2. produces: 指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回;
2. @ResponseBody
@ResponseBody注解,里边没有属性值。
作用:将controller方法返回的对象,通过适当的转换器转成指定的格式,写到response对象的body中,通常用来返回Json数据。
注意:
在使用此注解之后不会再走视图处理器,而是直接将数据写入到输入流中,它的效果等同于通过response对象输出指定格式的数据。
3. 写在方法中的注解
1.@RequestMapping("/ppp/{id}")
public String test(@PathVariable("id") Integer id){
return null;
}请求参数的绑定以及获取。
2.@RequestMapping("/ppp")
public String test(@RequestParam(value="name",required=false,defaultValue="小三") String name){
return null;
}备注:在多个参数的时候,一定要写上属性的名称,否则出现错误。‘
value:请求过程中,要有name,但是当我设置 required = false的时候,请求中可以不用有name,在默认的情况下是要有值的,当你没有设置值的时候,则会采用defaultValue="小三",'小三"
3.@CookieValue,cookie值的设定,其中的做法跟这个@RequestParam的注解一样。
1228

被折叠的 条评论
为什么被折叠?



