接口设计-增删改查

关于增删改查的 接口设计,比较简单,有一些固定的做法可以使用。

查询列表

  • 查询列表的接口,带上分页的入参: pageNo,pageSize,非必选,并设置默认值。

  • 入参为 dto,根据 dto 从数据库查出实体对象 entity 后,转换为展示层 vo。

  • entity 对象转换为 vo,可以用 BeanUtils.copyProperties。

  • 必选参数,设置校验规则。

  • 查询列表,一般会根据更新时间(updateTime)降序。

  • 如果查询的某个参数如果是多选的,可以用逗号隔开。

  • 如果查询的某个参数要求模糊查询,可以用 like 查询数据库。

  • 排序的参数尽量不要超过两个,太多的排序会影响性能。

  • 如果对性能有要求,可以加缓存。

查看详情

  • 入参可以传 id, 根据id查询详情。

  • 如果对性能有要求,可以加缓存。

新增/修改

  • 新增和修改可以用同一个接口,根据 id 判断是新增还是修改,如果id 为空,说明是新增。
  • 如果查询列表/查看详情时用了缓存,新增/修改需要在修改了数据库后删除缓存,保持数据库和缓存的一致性。
  • 新增/修改,可以修改一下 updateTime,方便定位问题。
  • 新增/修改后,可以返回更新结果,判断是否更新成功。

导入导出

详情见: https://blog.csdn.net/sinat_32502451/article/details/133026409

如何写一个接口:

详情见:https://blog.csdn.net/sinat_32502451/article/details/133715927

相关推荐
掘金者阿豪9 小时前
🚀 CentOS Stream 9服务器Docker部署KWDB:从零到跨模查询实战全记录
后端
yang_xin_yu10 小时前
一文带你精通泛型PECS原则与四大核心函数式接口
后端
孟陬10 小时前
国外技术周刊 #1:Paul Graham 重新分享最受欢迎的文章《创作者的品味》、本周被划线最多 YouTube《如何在 19 分钟内学会 AI》、为何我不
java·前端·后端
树獭叔叔10 小时前
13-KV Cache与位置编码表:大模型推理加速的核心技术
后端·aigc·openai
想用offer打牌10 小时前
一站式了解四种限流算法
java·后端·go
嘻哈baby10 小时前
用 C++ 写线程池是怎样一种体验?
后端
嘻哈baby10 小时前
SQL Server 和 Oracle 以及 MySQL 有哪些区别?
后端
绝无仅有10 小时前
Redis过期删除与内存淘汰策略详解
后端·面试·架构
武子康10 小时前
大数据-237 离线数仓 - Hive 广告业务实战:ODS→DWD 事件解析、广告明细与转化分析落地
大数据·后端·apache hive
绝无仅有10 小时前
Redis大Key问题排查与解决方案全解析
后端·面试·架构