@reqeustbody
用于接收json格式的请求体,有两种接收方式,一种是java实体类,会把json格式的请求体转为实体类
public R adminbook(@RequestBody Project project) {
System.out.println(project);
return R.ok().data("data",project);
}
如果请求体中没有实体类对应的参数,则实体类中各个属性都为空。
第二种方式是Map,会把请求体中的json格式转为map对象,如下
public R adminbook(@RequestBody Map map) {
//遍历map
Iterator<Map.Entry<String, String>> entires = map.entrySet().iterator();
while (entires.hasNext()) {
Map.Entry<String, String> entry = entires.next();
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key + ":" + value);
}
return null;
}
注意:不能接收form-data类型的请求,会报错,如下
直接写string,可以接收form表单格式数据(请求头是application/x-www-form-urlencoded),
@postmapping("/adminbook")
public R adminbook(String projectPlanDescTeacher,
String projectId,
String projectStatus) {
System.out.println(projectId);
System.out.println(projectPlanDescTeacher);
System.out.println(projectStatus);
return null;
}
可以接收请求路径直接携带的
@RequestParam
可以接收form-data格式
public R info(@RequestParam String u_name, @RequestParam String u_pwd, @RequestParam String roleName) {
System.out.println(u_name);
System.out.println(u_pwd);
System.out.println(roleName);
// userService.adduser(new User(u_name, u_pwd), roleName);
return R.ok();
}
可以接受form-urlencoded格式的数据
@PostMapping("/adduser")
public R info(@RequestParam String u_name, @RequestParam String u_pwd, @RequestParam String roleName) {
System.out.println(u_name);
System.out.println(u_pwd);
System.out.println(roleName);
// userService.adduser(new User(u_name, u_pwd), roleName);
return R.ok();
}
也可以接收请求头中的参数