1.创建构造器语法
// 其中泛型填充要操作的Entity
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
 
2.测试删除 ,ge大于
@Test
    public  void  test2(){
        // 创建QueryWrapper对象
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        // 直接.即可其中isNull = where name IS Not NULL,查询名字部位不为空的
        queryWrapper
                .isNotNull("name")
                // 如果继续.说明条件使用 AND 连接,ge为大于等于的意思sql为:and age >= 12
                .ge("age", 24);
        // 调用delete方法说明要根据条件进行数据删除
        int result = userMapper.delete(queryWrapper);
        System.out.println("delete return count = " + result);
    }
 
user表原先样子
 
 执行代码后
 
DELETE FROM user WHERE (name IS NOT NULL AND age >= ?)
 
MybaitsPlus为我们封装了很多方法,动态拼接,底层用到的介绍动态Sql;为程序开发节约了大量的时间,我们再也不需要化更多的时间在动态Sql上了;
2.测试删除:lt小于
 
DELETE FROM user WHERE (name IS NOT NULL AND age < ?)
 
lt 是age < ,不同于 ge >=
 总结:gt:>,lt:< ,ge:>=, le:<=
3.eq、ne
 eq:相等
 ne:不相等
@Test
    public void s(){
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("name", "Jack");
        final List<User> users = userMapper.selectList(queryWrapper);
        users.forEach(System.out::println);
    }
 
==>  Preparing: SELECT id,name,age,email,create_time,update_time FROM user WHERE (name = ?)
==> Parameters: Jack(String)
 
4.between、notBetween
 根据边界查询,包含边界大小
 @Test
    public void s2(){
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper.between("age", 3, 24);
        queryWrapper.notBetween("id", 1, 4);
        final List<User> users = userMapper.selectList(queryWrapper);
        users.forEach(System.out::println);
    }
 
Preparing: SELECT id,name,age,email,create_time,update_time FROM user WHERE (age BETWEEN ? AND ? AND id NOT BETWEEN ? AND ?)
==> Parameters: 3(Integer), 24(Integer), 1(Integer), 4(Integer)
<==    Columns: id, name, age, email, create_time, update_time
<==        Row: 1352673956626432, 玛丽亚, 3, 23213221@qq.com, 2022-04-29 15:01:48.0, 2022-04-29 15:01:50.0
<==        Row: 352100735947640832, 澳际赛亚人, 6, 23213221@qq.com, 2022-04-29 15:01:54.0, 2022-04-29 15:01:59.0
<==        Row: 352117547670179840, 小日本受死2, 18, 23213221@qq.com, 2022-04-29 15:55:58.0, 2022-04-29 15:55:58.0
<==      Total: 3
 
5.allEq
  @Test
    public void s3(){
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        Map<String, Object> map = new HashMap<>();
        map.put("id", 2);
        map.put("name", "Jack");
        map.put("age", 20);
        queryWrapper.allEq(map);
        final List<User> users = userMapper.selectList(queryWrapper);
        users.forEach(System.out::println);
    }
 
Preparing: SELECT id,name,age,email,create_time,update_time FROM user WHERE (name = ? AND id = ? AND age = ?)
==> Parameters: Jack(String), 2(Integer), 20(Integer)
<==    Columns: id, name, age, email, create_time, update_time
<==        Row: 2, Jack, 20, test2@baomidou.com, 2022-04-29 15:01:32.0, 2022-04-29 15:01:34.0
<==      Total: 1
Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@11b377c5]
User [Hash = -1512049413, id=2, name=Jack, age=20, email=test2@baomidou.com, serialVersionUID=1]
 
6.like、notLike、likeLeft、likeRight










