SpringBoot中获取参数的注解主要分为以下三个
@PathVariable@RequestParam@RequestBody
一、@PathVariable
可以获取到 url 中映射的变量
@GetMapping("/{name}") //占位public Result<Test> getOne(@PathVariable("name") String name){Test test = testService.getOne(name);return new Result<>(5000,"success","ok",test);}
示例:
二、@RequestParam
通常 url 中的参数就是 key = value的形式跟在 url 的后方
@RequestParam可以获取到 url 中的参数
/*** 删除* */@DeleteMapping("")//public Result<Object> deleteOne(@RequestParam("name") String name){ 也可以像这么写public Result<Object> deleteOne(@RequestParam String name){int affectedRows = testService.deleteOne(name);System.out.println("affectedRows:" + affectedRows);return new Result<>(5000, "success", "ok");}
如果@RequestParam不指定对应的字段名称,那么默认就是后面声明的变量名称
三、@RequestBody
多用于content-type为application/json,@RequestBody会获取请求中所携带的json字符串内容并与注解的bean进行参数对比。
@PostMapping("")public Result<Object> insertOne(@RequestBody Test test){int affectedRows = testService.insertOne(test);System.out.println("affectedRows:" + affectedRows);return new Result<>(5000, "success", "ok", test);}

会自动将传入的 raw 对象,解析到实体类中
