小程序开发定制写这篇文章的初衷是项小程序开发定制目组的小伙伴不懂什么叫。
1.定义:Restful风格的API小程序开发定制是一种软件架构风格,设计风格而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。
明确:他只是种代码风格的约束,而不是说非要这样干。
2. 表现形式:
主要由概括性的注解@RequestMapping,细分成了@DeleteMapping, @GetMapping, @PostMapping,@PatchMapping,@PutMapping等
3.各个种类Mapping的作用:
1.@GetMapping 作用类比 SELECT,从服务器查询,可以在服务器通过请求的参数区分查询的方式。
2.@PostMapping 作用类比 CREATE,在服务器新建一个资源,调用insert操作。
3.@PutMapping 作用类比 UPDATE,在服务器更新资源,调用update操作。
4.@PatchMapping 作用类比 UPDATE,在服务器更新资源(客户端提供改变的属性),(jdk8+能实现)。
5.@DeleteMapping 作用类比 DELETE,从服务器删除资源,调用delete语句。
我的理解: 就如有@Component,但是又细分了@Repository,@Service,@Controller一样。 @RequestMapping下细分@DeleteMapping, @GetMapping, @PostMapping等使得接口的请求更加语义化
4.关于接口中使用的@PathVariable作用
(1)当方法参数名称和需要绑定的uri中变量名称不一致时,需要@PathVariable设置与uri中变量名称相同的字段名接收参数值,例:
- @GetMapping("/{id}")
- @ApiOperation("根据id查询用户数据")
- public UserInfo findById(@PathVariable("id") Integer userId){
- return userInfoService.getById(userId);
- }
(2)当方法参数名称和需要绑定的uri中变量名称一致时,可简写,例:
- @GetMapping("/{userId}")
- @ApiOperation("根据id查询用户数据")
- public UserInfo findById(@PathVariable Integer userId){
- return userInfoService.getById(userId);
- }
个人习惯:在我看来Restful风格Api和@PathVariable是密不可分的一部分。