MyBatis-Plus CRUD接口-Mapper CRUD 接口

2022-03-23 17:08 更新
  • 通用 CRUD 封裝?BaseMapper?接口,為 Mybatis-Plus 啟動時自動解析實體表關系映射轉換為 Mybatis 內部對象注入容器
  • 泛型 ??為任意實體對象
  • 參數 ?Serializable ?為任意類型主鍵, Mybatis-Plus 不推薦使用復合主鍵約定,每一張表都有自己的唯一 id 主鍵
  • 對象 ?Wrapper ?為 條件構造器

Insert

// 插入一條記錄
int insert(T entity);

參數說明

 參數名  類型  描述
 entity  T  實體對象

Delete

// 根據 entity 條件,刪除記錄
int delete(@Param(Constants.WRAPPER) Wrapper<T> wrapper);
// 刪除(根據ID 批量刪除)
int deleteBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList);
// 根據 ID 刪除
int deleteById(Serializable id);
// 根據 columnMap 條件,刪除記錄
int deleteByMap(@Param(Constants.COLUMN_MAP) Map<String, Object> columnMap);

參數說明

 參數名  類型  描述
 ?wrapper?  Wrapper<T>  實體對象封裝操作類(可以為 null)
 ?idList?  Collection<? extends Serializable>  主鍵 ID 列表(不能為 null 以及 empty)
 ?id?  Serializable  主鍵 ID
 ?columnMap?  Map<String, Object>  表字段 map 對象

Update

// 根據 whereWrapper 條件,更新記錄
int update(@Param(Constants.ENTITY) T updateEntity, @Param(Constants.WRAPPER) Wrapper<T> whereWrapper);
// 根據 ID 修改
int updateById(@Param(Constants.ENTITY) T entity);

參數說明

 參數名  類型  描述
 ?entity?  T  實體對象 (set 條件值,可為 null)
 ?updateWrapper?  Wrapper<T>  實體對象封裝操作類(可以為 null,里面的 entity 用于生成 where 語句)

Select

// 根據 ID 查詢
T selectById(Serializable id);
// 根據 entity 條件,查詢一條記錄
T selectOne(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);

// 查詢(根據ID 批量查詢)
List<T> selectBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList);
// 根據 entity 條件,查詢全部記錄
List<T> selectList(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
// 查詢(根據 columnMap 條件)
List<T> selectByMap(@Param(Constants.COLUMN_MAP) Map<String, Object> columnMap);
// 根據 Wrapper 條件,查詢全部記錄
List<Map<String, Object>> selectMaps(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
// 根據 Wrapper 條件,查詢全部記錄。注意: 只返回第一個字段的值
List<Object> selectObjs(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);

// 根據 entity 條件,查詢全部記錄(并翻頁)
IPage<T> selectPage(IPage<T> page, @Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
// 根據 Wrapper 條件,查詢全部記錄(并翻頁)
IPage<Map<String, Object>> selectMapsPage(IPage<T> page, @Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
// 根據 Wrapper 條件,查詢總記錄數
Integer selectCount(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);

參數說明

 參數名  類型  描述
 ?id?  Serializable  主鍵 ID
 ?queryWrapper?  Wrapper<T>  實體對象封裝操作類(可以為 null)
 ?idList?  Collection<? extends Serializable>  主鍵 ID 列表(不能為 null 以及 empty)
 ?columnMap?  Map<String, Object>  表字段 map 對象
 ?page?  IPage<T>  分頁查詢條件(可以為 RowBounds.DEFAULT)


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號