一、Service层
【添加数据:(增)】
default boolean save(T entity);
boolean saveBatch(Collection<T> entityList, int batchSize);
注:
entityList 表示实体对象集合
batchSize 表示一次批量插入的数据量,默认为 1000
【添加或修改数据:(增或改)】
boolean saveOrUpdate(T entity);
default boolean saveOrUpdate(T entity, Wrapper<T> updateWrapper);
boolean saveOrUpdateBatch(Collection<T> entityList, int batchSize);
【删除数据:(删)】
default boolean removeById(Serializable id);
default boolean removeByMap(Map<String, Object> columnMap);
default boolean remove(Wrapper<T> queryWrapper);
default boolean removeByIds(Collection<? extends Serializable> idList);
【修改数据:(改)】
default boolean updateById(T entity);
default boolean update(T entity, Wrapper<T> updateWrapper);
boolean updateBatchById(Collection<T> entityList, int batchSize);
【查找数据:(查)】
default T getById(Serializable id);
default List<T> listByIds(Collection<? extends Serializable> idList);
default List<T> listByMap(Map<String, Object> columnMap);
default T getOne(Wrapper<T> queryWrapper);
Map<String, Object> getMap(Wrapper<T> queryWrapper);
default int count(Wrapper<T> queryWrapper);
default List<T> list();
default List<T> list(Wrapper<T> queryWrapper);
default List<Map<String, Object>> listMaps(Wrapper<T> queryWrapper);
default List<Object> listObjs();
default <E extends IPage<T>> E page(E page, Wrapper<T> queryWrapper);
default <E extends IPage<Map<String, Object>>> E pageMaps(E page, Wrapper<T> queryWrapper);
注:
get 用于返回一条记录。
list 用于返回多条记录。
count 用于返回记录总数。
page 用于分页查询。
【链式调用:】
default QueryChainWrapper<T> query();
default LambdaQueryChainWrapper<T> lambdaQuery();
default UpdateChainWrapper<T> update();
default LambdaUpdateChainWrapper<T> lambdaUpdate();
注:
query 表示查询
update 表示修改
Lambda 表示内部支持 Lambda 写法。
形如:
query().eq("column", value).one();
lambdaQuery().eq(Entity::getId, value).list();
update().eq("column", value).remove();
lambdaUpdate().eq(Entity::getId, value).update(entity);
二、Dao层
【添加数据:(增)】
int insert(T entity);
注:
T 表示任意实体类型
entity 表示实体对象
【删除数据:(删)】
int deleteById(Serializable id);
int deleteByMap(@Param(Constants.COLUMN_MAP) Map<String, Object> columnMap);
int delete(@Param(Constants.WRAPPER) Wrapper<T> wrapper);
int deleteBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList);
注:
id 表示 主键 ID
columnMap 表示表字段的 map 对象
wrapper 表示实体对象封装操作类,可以为 null。
idList 表示 主键 ID 集合(列表、数组),不能为 null 或 empty
【修改数据:(改)】
int updateById(@Param(Constants.ENTITY) T entity);
int update(@Param(Constants.ENTITY) T entity, @Param(Constants.WRAPPER) Wrapper<T> updateWrapper);
注:
update 中的 entity 为 set 条件,可以为 null。
updateWrapper 表示实体对象封装操作类(可以为 null,里面的 entity 用于生成 where 语句)
【查询数据:(查)】
T selectById(Serializable id);
List<T> selectBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList);
List<T> selectByMap(@Param(Constants.COLUMN_MAP) Map<String, Object> columnMap);
T selectOne(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
Integer selectCount(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
List<T> selectList(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
List<Map<String, Object>> selectMaps(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
List<Object> selectObjs(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
<E extends IPage<T>> E selectPage(E page, @Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
<E extends IPage<Map<String, Object>>> E selectMapsPage(E page, @Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
注:
queryWrapper 表示实体对象封装操作类(可以为 null)
page 表示分页查询条件