项目笔记1:通用 Service的常见方法
通用 Service 通常封装了常见的业务逻辑操作,以提高代码的复用性和可维护性。不同的框架和业务场景下,通用 Service 的方法会有所差异,但一般都会包含一些基本的增删改查(CRUD)操作,以下为你详细介绍:
基本的 CRUD 方法
- 创建(Create)
save(T entity)
:用于保存单个实体对象到数据库中。例如在一个用户管理系统里,使用此方法保存新注册的用户信息。saveBatch(Collection<T> entityList)
:批量保存实体对象集合,能提高数据插入效率,像一次性导入多个用户信息到系统时就会用到。
- 读取(Read)
getById(ID id)
:依据主键 ID 从数据库中获取单个实体对象。例如根据用户 ID 获取特定用户的详细信息。list()
:查询数据库中该实体的所有记录,返回一个实体列表,常用于展示所有用户列表的场景。list(Wrapper<T> queryWrapper)
:根据自定义的查询条件(如年龄大于 18 岁、姓名包含特定字符等)查询符合条件的实体列表。page(Page<T> page, Wrapper<T> queryWrapper)
:实现分页查询,可指定每页显示的记录数和当前页码,还能结合查询条件进行筛选,常用于展示大量数据时的分页显示。
- 更新(Update)
updateById(T entity)
:根据实体对象的主键 ID 更新数据库中的记录,例如修改用户的联系方式。update(T entity, Wrapper<T> updateWrapper)
:按照自定义的更新条件更新数据库记录,比如将所有年龄大于 60 岁的用户状态标记为 “老年用户”。
- 删除(Delete)
removeById(ID id)
:根据主键 ID 从数据库中删除单个实体记录,如删除某个不再使用的用户账号。remove(Wrapper<T> queryWrapper)
:根据自定义的删除条件删除符合条件的数据库记录,例如删除所有状态为 “已停用” 的用户记录。
其他常用方法
- 统计类
count()
:统计数据库中该实体的记录总数,可用于显示用户总数等信息。count(Wrapper<T> queryWrapper)
:统计符合特定查询条件的记录数量,如统计年龄在 20 - 30 岁之间的用户数量。
- 条件查询辅助类
getOne(Wrapper<T> queryWrapper)
:根据查询条件查询单条记录,若符合条件的记录有多条,会抛出异常,适用于确保查询结果唯一的场景。