MyBatis_Plus 通用CRUD

1.插入(insert)

BaseMapper:

测试代码:

    @Test
    public void testInsert() {
        Employee employee = new Employee();
        employee.setLastName("张三");
        employee.setEmail("1256957450@qq.com");
        employee.setAge(18);
        employee.setGender(1);

        //返回影响行数
        int i = employeeMapper.insert(employee);
        System.out.println("数据库影响行数:" + i);
    }

观察控制台的SQL语句

自动拼装上设置的实体类属性


2.查询(select) 

1.selectById:根据 ID 查询

测试代码:

@Test
public void testSelect() {
   //1.通过id查询
   Employee employee = employeeMapper.selectById(5);
   System.out.println(employee);
}

 控制台打印的SQL语句

查询结果:


2.selectOne:根据实体类的条件,查询一条记录

 

测试代码:

    @Test
    public void testSelect() {
        Employee employee = new Employee();
        employee.setId(5);
        employee.setLastName("李四");
        Employee employee1 = employeeMapper.selectOne(new QueryWrapper<Employee>(employee));
        System.out.println(employee1);
    }

 控制台打印的SQL语句

查询结果:

注意:selectOne传入的查询条件要确保是查询结果唯一的,否则会出异常

例如:查询年龄为18的数据

说selectOne的返回结果为一或者为null,但是这里找到了11个结果


3.selectList

测试代码:查询所有姓名为张三的数据

    @Test
    public void testSelect() {
        Employee employee = new Employee();
        employee.setLastName("张三");
        List<Employee> employees = employeeMapper.selectList(new QueryWrapper<Employee>(employee));
        for (Employee employee1 : employees) {
            System.out.println(employee1);
        }
    }

 控制台打印的SQL语句

查询结果:


4.selectByMap

测试代码:

    @Test
    public void testSelect() {
        Map<String, Object> columnMap = new HashMap<>();
        columnMap.put("last_name", "张三");
        List<Employee> employees = employeeMapper.selectByMap(columnMap);
        for (Employee employee : employees) {
            System.out.println(employee);
        }
    }

 控制台打印的SQL语句

查询结果:

注意:selectByMap方法传入的map的key对应的是数据表的列名,而不是实体类的属性名


5.selectBatchIds

测试代码:

    @Test
    public void testSelect() {
        List<Integer> idList = new ArrayList<>();
        idList.add(1);
        idList.add(2);
        idList.add(3);
        idList.add(4);
        List<Employee> employees = employeeMapper.selectBatchIds(idList);
        for (Employee employee : employees) {
            System.out.println(employee);
        }
    }

 控制台打印的SQL语句 

查询结果:


3.更新(update)

 1.updateById

 

测试代码:

    @Test
    public void testUpdate() {
        Employee employee = new Employee();
        employee.setId(5);
        employee.setLastName("李四");
        int i = employeeMapper.updateById(employee);
        System.out.println(i);
    }

 控制台打印的SQL语句 

更新结果:


2.update

 


4.删除(delete) 

1.deleteById

测试代码:

    @Test
    public void testDelete() {
        int i = employeeMapper.deleteById(15);
        System.out.println(i);
    }

2.deleteBatchIds(根据id批量删除)

 测试代码:

    @Test
    public void testDelete() {
        List<Integer> idList = new ArrayList<>();
        idList.add(14);
        idList.add(13);
        idList.add(12);
        idList.add(11);
        int i = employeeMapper.deleteBatchIds(idList);
        System.out.println("删除数据条数:" + i);
    }

  控制台打印的SQL语句 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值