API接口是服务端与客户端沟通的桥梁.较好的API设计能减少客户端与服务端的联调时间,更加关注于自己本身代码的优化与业务层的逻辑。
其中GET,POST,PUT,PATCH,DELETE这五种协议在日常CRUD开发中最为常用 以用户模块的业务场景分析
//获取用户列表(分页)
@GetMapping(value = "user")
public R selectList(UserSearch userSearch) {
//userSearch 是一个搜索实体,里面有页码以及筛选条件属性
return ResultUtil.data();
}
//获取单个用户信息
@GetMapping(value = "user/{id}")
public R selectOne(@PathVariable("id") String id) {
//获取用户信息,与分页接口相同采用GET协议,用path传值id,区别与分页的接口
return ResultUtil.data();
}
//新增用户
@PostMapping
public R add(@RequestBody User user) {
//新增用户为新资源写入,采用POST接口,入参为用户的实体
return ResultUtil.data();
}
//修改用户
@PutMapping("{id}")
public R upp(@PathVariable("id") String id,@RequestBody User user) {
//修改用户所有属性,采用PUT接口,入参为用户的实体,同时id通过path传值
return ResultUtil.data();
}
//删除用户
@DeleteMapping("{id}")
public R del(@PathVariable("id") String id) {
//删除用户,采用DELETE协议,id通过path传值
return ResultUtil.data();
}
//修改用户部分属性(这里举例修改用户姓名)
@PatchMapping("user/userName/{id}")
public R uppPart(@PathVariable("id") String id,@PartBody String userName) {
//修改用户部分属性,采用PATCH协议,在基础路由user后面加入要修改的属性名,入参用自定义注解@PartBody,原理就是解析body里单个叫userName的值,也可用Map接收,用自定义注解只是为了后期好维护.
return ResultUtil.data();
}
在计算机语言中有各种各样的协议,API协议只是其中的一种,想学习其他类型的协议可以观看动力节点在线的免费视频课程,拓展更多的Java知识,
提枪策马乘胜追击04-21 20:01
代码小兵92504-17 16:07
代码小兵98804-25 13:57
杨晶珍05-11 14:54