@reqeustbody
用于接收json格式的请求体,有两种接收方式,一种是java实体类,会把json格式的请求体转为实体类
public R adminbook(@RequestBody Project project) {
System.out.println(project);
return R.ok().data("data",project);
}
![](https://i-blog.csdnimg.cn/blog_migrate/b0a6e98e1bf343c3034a294b24b70b19.png)
如果请求体中没有实体类对应的参数,则实体类中各个属性都为空。
第二种方式是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;
}
![](https://i-blog.csdnimg.cn/blog_migrate/d6b335761641314ec92ccb9db81def24.png)
![](https://i-blog.csdnimg.cn/blog_migrate/8358200e02cb5fd1fa49c51e2ab74aa1.png)
注意:不能接收form-data类型的请求,会报错,如下
![](https://i-blog.csdnimg.cn/blog_migrate/4932cbae6c38afa9114cec824b4da80c.png)
直接写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;
}
![](https://i-blog.csdnimg.cn/blog_migrate/2f987fb2897faba449413f10d8974694.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1cd4a7b1b6b444da25af564a92e50aee.png)
可以接收请求路径直接携带的
![](https://i-blog.csdnimg.cn/blog_migrate/e97c5a0081af851000fdc6f5d16d053f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/cde0a66688abe283f9c743434523d006.png)
@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();
}
![](https://i-blog.csdnimg.cn/blog_migrate/1c8512e0d61f4d1e819af686468d028b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4604764b93a0ef73f1c8c3388fad9eae.png)
可以接受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();
}
![](https://i-blog.csdnimg.cn/blog_migrate/71974891d6ab631226f0329831470055.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f8d1b6f2c180de082b76d97c2a303808.png)
也可以接收请求头中的参数
![](https://i-blog.csdnimg.cn/blog_migrate/bf49f63419dcc8f5ec6b2ace82d9cf73.png)