SpringMVC学习之获取Restful风格的参数

1.Restful风格简介

Restful风格的请求是使用"url+请求方式"表示一次请求方式的,有四个表示操作方式的动词:

  • GET: 用于获取资源
  • POST: 用于新建资源
  • PUT: 用于更新资源
  • DELETE: 用于删除资源

例如:

  • /users GET 查询所有的用户
  • /users/1 GET 查询 id=1 的用户
  • /users/1 DELETE 删除 id=1 的用户
  • /users PUT 更新某个用户
  • /users POST 新增某个用户

2.重要的三个注解:@RequestParam、@RequestBody、@PathVariable

@RequestParam 参数绑定注解

过去在url中使用问号传递多个参数的时候,将前端传入的参数和Controller方法体的参数绑定起来
案例:当前端使用localhost:8080/users?id=666&name=LXL时:

@RequestMapping
    public String testRequestParam(@RequestParam int age, String name){
        return "name=" + name + ", age=" + age;
    }
@RequestBody json传参的注解

使用这个注解,代表Controller方法体的参数需要使用请求体(RequestBody)中以json形式传递的参数

@PostMapping
    public String save(@RequestBody User user) {
        return "新增了一个用户:" + user;
    }
@PathVariable 路径传参注解
@GetMapping(value = "/{id}")
    public String getById(@PathVariable int id){
        return "查询id为" + id + "的用户";
    }

3…Restful风格使用案例:

@RestController
@RequestMapping("/users")
public class BootController {

    @GetMapping
    public String getAll() {
        return "查询所有的用户";
    }

    @PostMapping
    public String save(@RequestBody User user) {
        return "新增了一个用户:" + user;
    }

    @PutMapping
    public String update(@RequestBody User user) {
        return "修改了一个用户:" + user;
    }

    @GetMapping(value = "/{id}")
    public String getById(@PathVariable int id){
        return "查询id为" + id + "的用户";
    }

    @DeleteMapping(value = "/{id}")
    public String deleteById(@PathVariable int id){
        return "删除id为" + id + "的用户";
    }

}

你可能感兴趣的:(Spring,Framework,restful,后端,java,spring,springmvc)