- @RequestBody ,不能通过表单和url 传参
@PostMapping(value = "/test")
@ApiOperation(value = "开始流程", notes = "开始流程")
public R test(@RequestBody TestDemo startProcessInstanceReq) {
System.out.println("startProcessInstanceReq = " + startProcessInstanceReq);
return R.ok(startProcessInstanceReq.toString());
}
postman测试注意传参使用 Body下的raw选项, raw表示使用json格式的参数
2. @RequestParam
此注解的接受参数可以是get请求url中的参数,也可以是表单提交数据或上传的文件,不能处理post请求
// 测试@RequestParam 接收参数
@PostMapping(value = "/test2")
public R test2(@RequestParam("name") String name,@RequestParam("age") Integer age) {
String str = name + ":" + age;
System.out.println(name + ":" + age);
return R.ok(str);
}
- @PathVariable
这个注解可以将URL中的占位符转换成参数。
@PostMapping(value = "/{name}/{age}")
public R test2(@PathVariable("name") String name,@PathVariable("age") Integer age) {
String str = name + ":" + age;
System.out.println(name + ":" + age);
return R.ok(str);
}
- Form表单的提交
普通表单
传送form表单数据,可以不用注解,直接传参,参数名字要一样,这种传参方式不能处理JSON参数请求。
// 测试4
@RequestMapping(value = "/test4")
public R test4( String name, Integer age) {
String str = name + ":" + age;
System.out.println(name + ":" + age);
return R.ok(str);
}
5.文件上传
文件上传是请求头中
enctype必须设置为 {“enctype”:“multipart/form-data”}
后端文件接受类型是MultipartFile
@RequestMapping(value = "/test5",method = RequestMethod.POST)
public R test5(TestDemo testDemo) {
String file = testDemo.getFile().getOriginalFilename();
String str = testDemo.getName()+ ":" + testDemo.getAge() + ":" + file + ":" + testDemo.getFile().getSize();
System.out.println(str);
return R.ok(str);
}