mybatis-plus 快速搭建工程
增删查改(CRUD)
链接中给出了所有的CRUD接口:
https://mp.baomidou.com/guide/crud-interface.html#selectbymap
通用使用示例:
- 增:
public void testInsert(){ Employee employee = new Employee(); employee.setLastName("东方不败"); employee.setEmail("dfbb@163.com"); employee.setGender(1); employee.setAge(20); emplopyeeDao.insert(employee); //mybatisplus会自动把当前插入对象在数据库中的id写回到该实体中 System.out.println(employee.getId()); }
- 删:
//1.根据id删除 emplopyeeDao.deleteById(1); //2.根据Map删除 Map<String,Object> columnMap = new HashMap<>(); columnMap.put("gender",0); columnMap.put("age",18); emplopyeeDao.deleteByMap(columnMap); //3.根据id批量删除 List<Integer> idList = new ArrayList<>(); idList.add(1); idList.add(2); emplopyeeDao.deleteBatchIds(idList);
- 查:
//1.根据id查询 Employee employee = emplopyeeDao.selectById(1); //2. 3. 略 //4. 根据id批量查询 List<Integer> idList = new ArrayList<>(); idList.add(1); idList.add(2); idList.add(3); List<Employee> employees = emplopyeeDao.selectBatchIds(idList); System.out.println(employees);
- 改:
public void testUpdate(){ Employee employee = new Employee(); employee.setId(1); employee.setLastName("更新测试"); //emplopyeeDao.updateById(employee);//根据id进行更新,没有传值的属性就不会更新 emplopyeeDao.updateAllColumnById(employee);//根据id进行更新,没传值的属性就更新为null }条件构造器(QueryWrapper以及UpdateWrapper)
实例:
1、分页查询年龄在18 - 50且gender为0、姓名为tom的用户:
List<Employee> employees = emplopyeeDao.selectPage(new Page<Employee>(1,3), new QueryWrapper<Employee>() .between("age",18,50) .eq("gender",0) .eq("last_name","tom") );
2、查询gender为0且名字中带有老师、或者邮箱中带有a的用户:
List<Employee> employees = emplopyeeDao.selectList(
new QueryWrapper<Employee>()
.eq("gender",0)
.like("last_name","老师")
//.or()//和or new 区别不大
.orNew()
.like("email","a")
);
3、查询gender为0,根据age排序,简单分页:
List<Employee> employees = emplopyeeDao.selectList(
new QueryWrapper<Employee>()
.eq("gender",0)
.orderBy("age")//直接orderby 是升序,asc
.last("desc limit 1,3")//在sql语句后面追加last里面的内容(改为降序,同时分页)
);
4、根据条件更新:
//该案例表示把last_name为tom,age为25的所有用户的信息更新为employee中设置的信息。
public void testQueryWrapperUpdate(){
Employee employee = new Employee();
employee.setLastName("苍老师");
employee.setEmail("cjk@sina.com");
employee.setGender(0);
emplopyeeDao.update(employee,
new UpdateWrapper<Employee>()
.eq("last_name","tom")
.eq("age",25)
);
}
博客介绍了MyBatis-Plus快速搭建工程的方法,给出了搭建工程的链接。还阐述了增删查改(CRUD)操作,提供了所有CRUD接口的链接,包含通用使用示例。此外,介绍了条件构造器QueryWrapper和UpdateWrapper,并给出多个使用实例。
539

被折叠的 条评论
为什么被折叠?



