一、BaseMapper方法详解
1、Insert
// 插入一条记录
int insert(T entity);
2、Delete
// 根据 entity 条件,删除记录
int delete(@Param(Constants.WRAPPER) Wrapper
// 删除(id集合 批量删除,不能为 null 以及 empty)——例如参数为:List
int deleteBatchIds(idList);
// 根据 ID 删除
int deleteById(id);
// 根据 columnMap 条件,删除记录
int deleteByMap(@Param(Constants.COLUMN_MAP) Map
3、Update
// 根据 whereEntity 条件,更新记录
int update(@Param(Constants.ENTITY) T entity, @Param(Constants.WRAPPER) Wrapper
// 根据 ID 修改,实体中set id参数,然后将实体直接传入。
int updateById(T entity);
4、Select
// 根据 ID 查询
T selectById(Serializable id);
// 根据 entity 条件,查询一条记录
T selectOne(@Param(Constants.WRAPPER) Wrapper
// 查询(根据ID 批量查询,与上述删除类似)
List
// 根据 entity 条件,查询全部记录,参数为null,查询所有记录
List
// 查询(根据 columnMap 条件)
List
// 根据 Wrapper 条件,查询全部记录
List
// 根据 Wrapper 条件,查询全部记录。注意: 只返回第一个字段的值
List
// 分页查询
IPage
例如:
Page p = new Page(pageNum, pageSize);
QueryWrapper
//设置查询条件,进行模糊查询
queryWrapper.lambda().like(!StringUtils.isEmpty(indexName),ReportIndexDO::getIndexName,indexName).
eq(!StringUtils.isEmpty(frequency),ReportIndexDO::getReportingFreq,frequency);
xxxMapper.selectPage(p,queryWrapper);
// 根据 Wrapper 条件,查询全部记录(并翻页)
IPage
// 根据 Wrapper 条件,查询总记录数
Integer selectCount(@Param(Constants.WRAPPER) Wrapper
二、BaseMapper方法实例
public class lkmMapper {
@Resource
private UserMapper userMapper;
/**
* 获取所有用户
*/
@Test
public void selectList(){
userMapper.selectList(null);
}
/**
* 根据指定条件 查询符合条件的用户 (selectList传参数的查询形式)
*/
@Test
public void selectAllList(){
QueryWrapper
queryWrapper.ge("name",lkm);
userMapper.selectList(queryWrapper);
}
/**
* 根据 id 查询指定用户
*/
@Test
public void selectById(){
userMapper.selectById(001);
}
/**
* 根据 ID 批量查询用户
*/
@Test
public void selectBatchIds(){
List
userMapper.selectBatchIds(integers);
}
/**
* 根据 Map搜索条件查询指定条件下的用户
*/
@Test
public void selectByMap(){
Map
map.put("name","lkm");
userMapper.selectByMap(map);
}
/**
* wrapper 查询一条数据
*/
@Test
public void selectOne(){
QueryWrapper
queryWrapper.eq("name","lkm");
userMapper.selectOne(queryWrapper);
}
/**
* 根据指定条件查询符合条件的记录数
*/
@Test
public void selectCount(){
QueryWrapper
queryWrapper.gt("name",lkm);
userMapper.selectCount(queryWrapper);
}
/**
* 根据指定条件查询用户
*/
@Test
public void selectMaps(){
QueryWrapper
queryWrapper.ge("name",lkm);
userMapper.selectMaps(queryWrapper);
}
/**
* 根据指定条件查询符合条件的用户 (只返回第一个字段值)
*/
@Test
public void selectObjs(){
QueryWrapper
queryWrapper.ge("name",lkm);
userMapper.selectObjs(queryWrapper);
}
/**
* 查询所有用户并分页
*/
@Test
public void selectPage(){
Page p = new Page(pageNum, pageSize);
QueryWrapper
reportIndexMapper.selectPage(p,queryWrapper)
}
/**
* 查询所有用户并分页
*/
@Test
public void selectMapsPage(){
Page
IPage
List
}
/**
* 插入一条记录
*/
@Test
public void insert(){
User user = new User();
user.setUsername("lkm");
userMapper.insert(user);
}
/**
* 根据ID删除一条记录
*/
@Test
public void deleteById(){
userMapper.deleteById(001);
}
/**
* 根据指定 Map 条件删除记录
*/
@Test
public void deleteByMap(){
Map
map.put("name",lkm);
userMapper.deleteByMap(map);
}
/**
* 根据指定 Wrapper 条件删除记录
*/
@Test
public void delete(){
QueryWrapper
queryWrapper.likeRight("name","lkm");
userMapper.delete(queryWrapper);
}
/**
* 根据指定ID批量删除记录
*/
@Test
public void deleteBatchIds(){
List
userMapper.deleteBatchIds(integers);
}
/**
* 根据指定条件更新记录
*/
@Test
public void update(){
User user = new User();
user.setEmail("lkm@qq.com");
UpdateWrapper
updateWrapper.eq("name","lkm");
userMapper.update(user, updateWrapper);
}
/**
* 指定ID 更新记录
*/
@Test
public void updateById(){
User user = new User();
user.setId(001);
user.setNmae("lkm");
userMapper.updateById(user);
}