一.了解URL结构
二.请求路径参数
@RequestParam:获取Request请求的参数
1.使用方法
@RequestMapping(value = "/hello3", method = RequestMethod.GET)
public String demo3(@RequestParam(value = "word", required = false) String word) {
if (word != null) {
return word;
} else {
return "没有传递该参数";
}
}
2.调用方法
http://localhost:8080/hello3?word=name;参数
3.三个属性
value:请求参数名
required:该参数在请求时是否必须,默认ture,ture表示在请求中必须包含该参数,如果没有包含,将会抛出异常
defaultValue:默认值,设置了该值,required将自动强制设置为false
@PathVariable:获取URL请求路径上的变量值
1.使用方法
@RequestMapping(value = "/ha/{word}", method = RequestMethod.GET)
public String demo4(@PathVariable("word") String word) {
return word;
}
2.调用方法
http://localhost:8080/ha/111
三:body参数
@Requestbody(前端传给后端json对象时使用)
1.定义
@RequestBody用于读取Http请求的body部分数据——就是我们的请求数据(前端传给后端的数据)。比如json或者xml,然后把数据绑定到 controller中方法的参数上。
2.使用方法
@RequestMapping(value = "/add", method = RequestMethod.POST)
public String insert(@RequestBody ContactDomain contact) {
contactMapper.insert(contact);
return "success";
}
//拿到json数据,传给contact对象,并赋值给相应的参数
@Responsebody(方法需要返回json对象的时候使用)
1.定义
放在controller层的方法上,将Controller方法返回的对象,通过适当的HttpMessageConverter转换为指定格式(json,xml)后,写入到Response对象的body数据区。
2.使用方法
@ResponseBody
@RequestMapping(value = "/get/{id}", method = RequestMethod.GET)
public ContactDomain get(@PathVariable("id") String id) {
ContactDomain contactDomain = contactMapper.getbyid(id);
return contactDomain;
}//返回一个对象,加了@ResponseBody注解后,调用接口,会以json格式返回对象
四:请求头参数
@RequestHeader:用于映射控制器参数以请求头值的注释
@RequestMapping(value = "/hello")
public String hello(@RequestHeader(value="User-Agent", defaultValue="foo") String userAgent)
}