最近在写vue+springboot项目的时候经常得用到@Responsebody、@Requestbody、@RequestParam、跟无注解的情况
这个是错误用法,@RequestParam只适用于指定了某个或者多个参数的形式
@PostMapping("add")
public Result addUser(@RequestParam User user){
boolean flag= userService.insert(user);
if (flag){
/*新增成功的时候*/
return ResultFactory.buildResult(200,"添加成功",flag);
}else{
return ResultFactory.bulidFailResult("添加失败");
}
}
这个是@RequestParam正确用法
/**
* 分页查询查询全部用户*/
@GetMapping("selectAll")
public List<User> selectAll(@RequestParam Integer offset, @RequestParam Integer limit) {
List<User> user = userService.queryAllByLimit(offset, limit);
if (user != null) {
return user;
} else {
System.out.println("无数据");
return null;
}
}
@Responsebody不是作为绑定参数而使用,而是放在方法体上面,与@Controller结合等同于@RestController注解
而@RequestBody跟无注解一样适用于未指定特定参数的情况下,例如插入操作
@PostMapping("add")
public Result addUser(@RequestBody User user){
boolean flag= userService.insert(user);
if (flag){
/*新增成功的时候*/
return ResultFactory.buildResult(200,"添加成功",flag);
}else{
return ResultFactory.bulidFailResult("添加失败");
}
}
当不熟悉的时候便经常会出现这类低级错误。欢迎批评指正!!