温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

MybatisPlus QueryWrapper常用方法有哪些

发布时间:2022-04-15 10:15:02 来源:亿速云 阅读:324 作者:zzz 栏目:开发技术

这篇文章主要介绍了MybatisPlus QueryWrapper常用方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MybatisPlus QueryWrapper常用方法有哪些文章都会有所收获,下面我们一起来看看吧。

    QueryWrapper常用方法

    MybatisPlus QueryWrapper常用方法有哪些

    MybatisPlus 使用QueryWrapper测试用例

    一、ge、gt、le、lt、isNull、isNotNull

    @Test
    public void testQuery() {
    QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper
                .isNull("name")
                .ge("age", 12)
                .isNotNull("email");
            int result = userMapper.delete(queryWrapper);
        System.out.println("delete return count = " + result);
    }

    二、eq、ne

    @Test
    public void testSelectOne() {
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("name", "Tom");
        Useruser = userMapper.selectOne(queryWrapper);//只能返回一条记录,多余一条则抛出异常
        System.out.println(user);
    }

    三、between、notBetween

    @Test
    public void testSelectCount() {
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper.between("age", 20, 30);
            Integer count = userMapper.selectCount(queryWrapper); //返回数据数量
        System.out.println(count);
    }

    四、like、notLike、likeLeft、likeRight

    @Test
    public void testSelectMaps() {
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper
                .select("name", "age")
                .like("name", "e")
                .likeRight("email", "5");
        List<Map<String, Object>> maps = userMapper.selectMaps(queryWrapper);//返回值是Map列表
        maps.forEach(System.out::println);
    }

    五、orderBy、orderByDesc、orderByAsc

    @Test
    public void testSelectListOrderBy() {
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper.orderByDesc("age", "id");
        List<User>users = userMapper.selectList(queryWrapper);
        users.forEach(System.out::println);
    }

    六、插入insert

    @Test
    public void save() {
        User user = new User();
        user.setAge(23);
        user.setEmail("344");
        user.setName("test");
        // 1.使用service新增
        userService.save(user);
        // 2.使用mapper 新增
        userMapper.insert(user);
    }

    七、删除remove

    @Test
    public void delete() {
        // 根据条件删除
        userService.remove(Wrappers.<User>query().lambda().eq(User::getAge, 3));
    }

    八、修改update

    @Test
    public void update() {
        User user = new User();
        user.setAge(23);
        user.setEmail("344");
        user.setName("test333");
        UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
        updateWrapper.eq("id","1");
        // 1.user 中封装修改的属性值, updateWrapper 中封装修改的条件参数值
        userService.update(user,updateWrapper);
    
        // 2.根据条件修改对应的参数属性值
        userService.update(Wrappers.<User>update().lambda().set(User::getName, "2").eq(User::getAge, 23));    
        // 3.判断参数是否为空,并进行修改     String name = "name";     userService.update(Wrappers.<User>update().lambda().set(StringUtils.isNotBlank(name),User::getName, name).eq(User::getAge, 23));
    }

    关于“MybatisPlus QueryWrapper常用方法有哪些”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“MybatisPlus QueryWrapper常用方法有哪些”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI