BaseMapper接口的使用

时间:2025-04-28 07:22:00
/** * Mapper 继承该接口后,无需编写 文件,即可获得CRUD功能 */ public interface BaseMapper<T> extends Mapper<T> { //插入一条记录 int insert(T entity); //根据 ID 删除 int deleteById(Serializable id); //根据实体(ID)删除 int deleteById(T entity); //根据 columnMap 条件,删除记录 int deleteByMap(@Param(Constants.COLUMN_MAP) Map<String, Object> columnMap); // 删除记录,条件生成器根据entity生成where后的条件 int delete(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper); //删除(根据ID或实体 批量删除) int deleteBatchIds(@Param(Constants.COLL) Collection<?> idList); // 根据 ID 修改 int updateById(@Param(Constants.ENTITY) T entity); // 根据 whereEntity 条件,更新记录 int update(@Param(Constants.ENTITY) T entity, @Param(Constants.WRAPPER) Wrapper<T> updateWrapper); //根据 ID 查询 T selectById(Serializable id); //查询(根据ID 批量查询) List<T> selectBatchIds(@Param(Constants.COLL) Collection<? extends Serializable> idList); // 查询(根据 columnMap 条件) List<T> selectByMap(@Param(Constants.COLUMN_MAP) Map<String, Object> columnMap); //查询一条记录 default T selectOne(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper) { ....... } //根据 Wrapper 条件,判断是否存在记录 default boolean exists(Wrapper<T> queryWrapper) { ..... } // 根据 Wrapper 条件,查询总记录数 Long selectCount(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper); //根据 entity 条件,查询全部记录 List<T> selectList(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper); //根据 Wrapper 条件,查询全部记录 List<Map<String, Object>> selectMaps(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper); //根据 Wrapper 条件,查询全部记录 List<Object> selectObjs(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper); // 根据 entity 条件,查询全部记录(并翻页) <P extends IPage<T>> P selectPage(P page, @Param(Constants.WRAPPER) Wrapper<T> queryWrapper); //根据 Wrapper 条件,查询全部记录(并翻页) <P extends IPage<Map<String, Object>>> P selectMapsPage(P page, @Param(Constants.WRAPPER) Wrapper<T> queryWrapper); }