请求响应——数据接收
代替原来的接受前端输入信息的形式。
简单参数
String assessId=request.getParameter("assessId");
保证形参名与前端那的name一致即可,还能实现类型转换。
@RestController
public class HelloController{
@RequestMapping("/example")
public String example(String name,Integer age){
System.out.println(name+":"+age);
return "OK";
}
}
RequestParam注解使参数对应。requird属性为true,代表该参数必须传递,如果不传递则报错。但是可以将requird属性设为false
public String example(@RequestParam(name="name",requird=false) String username, Integer age){
@RequestMapping("/example")
public String example(@RequestParam(name="name") String username, Integer age){
System.out.println(username+":"+age);
return "OK";
}
实体参数
已经定义好User类,两个属性:name和age
@RestController
public class HelloController{
@RequestMapping("/example2")
public String example2(User user){
System.out.println(user);
return "OK";
}
}
数组参数
@RequestMapping("/arrayParam")
public String arrayParam(String [] name){
System.out.println(Arrays.toString(name));
return "OK";
}
集合参数
@RequestMapping("/ListParam")
public String ListParam(@RequestParam List<String> name){
System.out.println(name);
return "OK";
}
日期参数
注:必须这样写,否则报错“yy-MM-dd HH:mm:ss”
@RequestMapping("/date")
public String date(@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime localDateTime){
System.out.println(localDateTime);
return "ok";
}
Json参数
路径为post,实体类里get和set要齐全,否则会接受为null,Apifox选json
@RequestMapping("jsonParam")
public String jsonParam(@RequestBody User user) {
System.out.println(user);
return "OK";
}
路径参数
用该注解PathVariable从而被识别为路径参数
@RequestMapping("/path/{id}")
public String pathParam(@PathVariable Integer id){
System.out.println(id);
return "OK";
}
还可以为多参数
@RequestMapping("/path/{id}/{address}")
public String pathParam2(@PathVariable Integer id, @PathVariable String address){
System.out.println(id);
System.out.println(address);
return "OK";
}