一、IService使用
1.getOne(),这个是方法返回结果不止一条则会抛出异常,如果想默认取第一条结果,可以给这方法传第二个参数为false。
@Test
public void getOne() {
User one = userService.getOne(Wrappers.lambdaQuery().eq(User::getAge, 31),false);
System.out.println(one);
}
2.saveOrUpdateBatch(),批量新增或者修改方法,判断ID是否存在,如果ID不存在执行新增,如果ID存在先执行查询语句,查询结果为空新增,否则修改。
@Test
public void saveOrUpdateBatch() {
User user1 = new User();
user1.setName("兔子");
user1.setAge(18);
User user2 = new User();
user2.setId(1088250446457389060L);
user2.setName("乌龟");
user2.setAge(18);
List users = Arrays.asList(user1, user2);
boolean b = userService.saveOrUpdateBatch(users);
System.out.println(b);
}
3.基于lambda的相关操作
/**
* lombda查询
*/
@Test
public void lambdaQuery(){
List list = userService.lambdaQuery().eq(User::getAge, 18).list();
list.forEach(System.out::println);
}
/**
* lombda修改
*/
@Test
public void lambdaUpdate(){
boolean update = userService.lambdaUpdate().eq(User::getAge, 18).set(User::getAge, 31).update();
System.out.println(update);
}
/**
* lombda删除
*/
@Test
public void lambdaRemoce(){
boolean remove = userService.lambdaUpdate().eq(User::getAge, 18).remove();
System.out.println(remove);
}
4. 表格转载于:https://www.cnblogs.com/andea/p/11601367.html
注释
mapper
service
注释
DDML
进一步封装:采用 get 查询单行, remove 删除, list 查询集合, page 分页
int insert(T entity);
boolean save(T entity);
选择字段,策略插入
boolean saveBatch(Collection entityList);
批量插入
boolean saveOrUpdateBatch(Collection entityList);
int deleteById(Serializable id);
boolean removeById(Serializable id);
根据 entity 条件删除
int delete(Wrapper wrapper);
boolean remove(Wrapper queryWrapper);
无对应记录也返回true
columnMap 删除条件
int deleteByMap(Map columnMap);
boolean removeByMap(Map columnMap);
columnMap 表字段 map 对象
int updateById(T entity);
boolean updateById(T entity);
boolean saveOrUpdate(T entity);
T selectById(Serializable id);
T getById(Serializable id);
columnMap查询条件
List selectByMap(Map columnMap);
Collection listByMap(Map columnMap);
如果逻辑非唯一需要
wrapper.last("limit 1") 设置唯一性
T selectOne(Wrapper queryWrapper);
T getOne(Wrapper queryWrapper);
有多个取一个
Integer selectCount(Wrapper queryWrapper);
int count(Wrapper queryWrapper);
List selectList(Wrapper queryWrapper);
List list(Wrapper queryWrapper);
只能查询一个字段
List cols;
List l = (List)cols;
List selectObjs(Wrapper queryWrapper);
List listObjs(Wrapper queryWrapper);
根据 Wrapper 条件,查询全部记录
IPage selectPage(IPage page, Wrapper queryWrapper);
IPage page(IPage page, Wrapper queryWrapper);