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

  • Post author:
  • Post category:其他




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 + "的用户";
    }

}



版权声明:本文为rambo_csdn_123原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。