• MybatisPlus条件构造器Wrapper


    我们写一些复杂的sql就可以使用它来替代!

    1、测试一: 查询name不为空的用户,并且邮箱不为空的用户,年龄大于等于12

    @Test
    void contextLoads() {
    // 查询name不为空的用户,并且邮箱不为空的用户,年龄大于等于12
    QueryWrapper<User> wrapper = new QueryWrapper<>();
    wrapper
    .isNotNull("name")
    .isNotNull("email")
    .ge("age",12);
    userMapper.selectList(wrapper).forEach(System.out::println); //map对比一下
    }

    2、测试二:查询名字狂神说(bilibili中搜索,讲的很好)

    @Test
    void test2(){
    // 查询名字狂神说
    QueryWrapper<User> wrapper = new QueryWrapper<>();
    wrapper.eq("name","狂神说");
    User user = userMapper.selectOne(wrapper); // 查询一个数据,出现多个结果使用List
    或者 Map
    System.out.println(user);
    }

    3、测试三: 查询年龄在 20 ~ 30 岁之间的用户

    @Test
    void test3(){
    // 查询年龄在 20 ~ 30 岁之间的用户
    QueryWrapper<User> wrapper = new QueryWrapper<>();
    wrapper.between("age",20,30); // 区间
    Integer count = userMapper.selectCount(wrapper);// 查询结果数
    System.out.println(count);
    }

    4、测试四:查询年龄在 20 ~ 30 岁之间的用户

    @Test
    void test4(){
    // 查询年龄在 20 ~ 30 岁之间的用户
    QueryWrapper<User> wrapper = new QueryWrapper<>();
    // 左和右 t%
    wrapper
    .notLike("name","e")
    .likeRight("email","t");
    List<Map<String, Object>> maps = userMapper.selectMaps(wrapper);
    maps.forEach(System.out::println);
    }

    5、测试五:id 在子查询中查出来

    @Test
    void test5(){
    QueryWrapper<User> wrapper = new QueryWrapper<>();
    //
    wrapper.inSql("id","select id from user where id<3");
    List<Object> objects = userMapper.selectObjs(wrapper);
    objects.forEach(System.out::println);
    }

    6、测试六:通过id进行排序

    @Test
    void test6(){
    QueryWrapper<User> wrapper = new QueryWrapper<>();
    // 通过id进行排序
    wrapper.orderByAsc("id");
    List<User> users = userMapper.selectList(wrapper);
    users.forEach(System.out::println);
    }

    使用添加构造器来分页

    public Page<Users> FindListUsers(Integer index, Integer size) throws Exception {
          Page<Users> page = new Page<>(index,size);
          QueryWrapper<Users> wapper = new QueryWrapper<Users>();
          wapper.eq("name", "张三");
          ...
          userMapper.selectPage(page, wapper);
          return page;
        }
  • 相关阅读:
    V2热帖:要多健壮的代码才能支撑起千变万化的需求?
    jmeter生成html报告的命令
    jmeter5.x&4.x搭配使用Serveragent 监听服务端性能参数
    springboot关于tomcat的几个默认配置
    nginx日志统计分析-shell
    OpenStack虚拟机VIP配置步骤
    openstack 3.14.3 虚拟机增加指定IP网卡
    OpenStack各组件的常用命令
    Filebeat的Registry文件解读
    一个shell脚本的实践
  • 原文地址:https://www.cnblogs.com/64Byte/p/13234926.html
Copyright © 2020-2023  润新知