zoukankan      html  css  js  c++  java
  • 每天玩转3分钟 MyBatis-Plus

    每天玩转3分钟 MyBatis-Plus - 1. 配置环境

    每天玩转3分钟 MyBatis-Plus - 2. 普通查询

    每天玩转3分钟 MyBatis-Plus - 3. 高级查询

    代码下载:https://github.com/Jackson0714/study-mybatis-plus.git

    mybatis-plus的查询功能非常强大, 上一篇,我们介绍了mybatis-plus的普通查询功能,这一篇我们介绍mybatis-plus的高级查询功能。通过几个查询需求来讲解。

    准备数据

    User 表结构如下:

    idnameageemail
    1 Jone 18 test1@baomidou.com
    2 Jack 20 test2@baomidou.com
    3 Tom 28 test3@baomidou.com
    4 Sandy 21 test4@baomidou.com
    5 Billie 24 test5@baomidou.com

    一、案例汇总(第一波)

    1.1 查询名字中包含“Ja”并且年龄小于30的用户

    难度系数 ★☆

    1.2 查询名字中包含“a”并且年龄大于等于15且年龄小于等于25,且email不为空

    难度系数 ★☆

    1.3 查询名字中“J”开头并且年龄大于等于25,按照年龄降序排列,年龄相同按照id升序排列

    难度系数 ★★★

    二、案例讲解

    1.1 查询名字中包含“Ja”并且年龄小于30的用户

    难度系数 ★☆

    考察 like、lt用法

    name LIKE '%Ja%' age < 30

     1     /*
     2      * 描述:例2.1 查询名字中包含“Ja”并且年龄小于30的用户
     3      * 作者:博客园-悟空聊架构
     4      * 时间:2019-01-20
     5      * Github:https://github.com/Jackson0714/study-mybatis-plus.git
     6      * 博客园:https://www.cnblogs.com/jackson0714
     7      * */
     8     @Test
     9     public void testSelectByQueryWrapper() {
    10         System.out.println(("----- 查询名字中包含“Ja”并且年龄小于30的用户------"));
    11         QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    12         queryWrapper.like("name", "ja").lt("age", 30);
    13         List<User> userList = userMapper.selectList(queryWrapper);
    14         userList.forEach(System.out::println);
    15     }

    1.2 查询名字中包含“a”并且年龄大于等于15且年龄小于等于25,且email不为空

    难度系数 ★☆
    考察 between 用法

    SQL语句:name LIKE '%a%' AND age BETWEEN 15 AND 25 AND email IS NOT NULL

     1     /*
     2      * 描述:例1.2 查询名字中包含“a”并且年龄大于等于15且年龄小于等于35,且email不为空
     3      * 作者:博客园-悟空聊架构
     4      * 时间:2019-01-20
     5      * Github:https://github.com/Jackson0714/study-mybatis-plus.git
     6      * 博客园:https://www.cnblogs.com/jackson0714
     7      * */
     8     @Test
     9     public void testSelectByQueryWrapper2() {
    10         System.out.println(("----- 查询名字中包含“a”并且年龄大于等于15且年龄小于等于25,且email不为空------"));
    11         QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    12         //queryWrapper.like("name", "a").ge("age", 15).le("age", 25).isNotNull("email");
    13         queryWrapper.like("name", "a").between("age", 15,25).isNotNull("email");
    14         List<User> userList = userMapper.selectList(queryWrapper);
    15         userList.forEach(System.out::println);
    16     }

     1.3 查询名字中“J”开头并且年龄大于等于25,按照年龄降序排列,年龄相同按照id升序排列

    难度系数 ★★★
    考察 likeRight、orderByDesc、orderByAsc 用法
    SQL语句:name LIKE 'J%' or age > 25 ORDER BY age desc, id ASC
     1     /*
     2      * 描述:例1.3 查询名字中“J”开头并且年龄大于26,按照年龄降序排列,年龄相同按照id升序排列
     3      * SQL语句:name LIKE 'J%' or age > 26 ORDER BY age desc, id ASC
     4      * 作者:博客园-悟空聊架构
     5      * 时间:2019-01-20
     6      * Github:https://github.com/Jackson0714/study-mybatis-plus.git
     7      * 博客园:https://www.cnblogs.com/jackson0714
     8      * */
     9     @Test
    10     public void testSelectByQueryWrapper3() {
    11         System.out.println(("----- 查询名字中包含“a”并且年龄大于26,按照年龄降序排列,年龄相同按照id升序排列 ------"));
    12         QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    13         queryWrapper.likeRight("name","J").or().gt("age",26).orderByDesc("age")
    14                 .orderByAsc("id");
    15         List<User> userList = userMapper.selectList(queryWrapper);
    16         userList.forEach(System.out::println);
    17     }

     

    每天玩转3分钟 MyBatis-Plus - 1. 配置环境

    每天玩转3分钟 MyBatis-Plus - 2. 普通查询

    每天玩转3分钟 MyBatis-Plus - 3. 高级查询

    关注公众号:悟空聊架构,回复pmp,领取pmp资料!回复悟空,领取架构师资料!


    作  者:悟空聊架构 
    出  处:http://www.cnblogs.com/jackson0714/ 
    关于作者:专注于移动开发。如有问题或建议,请多多赐教! 
    版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。 
    特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者直接私信我 
    声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐】一下。您的鼓励是作者坚持原创和持续写作的最大动力! 

    悟空聊架构 

    关注我,带你每天进步一点点!

    还有111本书籍赠送~~

  • 相关阅读:
    找不到vc_runtimeMinimum_x86.msi!
    ubuntu开启coredump
    log4j2项目打成jar包运行日志无法打印
    linux 下使用 tc 模拟网络延迟和丢包
    Spring MVC
    typora实现图片上传
    java异常和调优
    java线程
    java三大特征
    webstorm如何更换主题以及更换主题后字体缩放问题
  • 原文地址:https://www.cnblogs.com/jackson0714/p/study-mybatis-plus3.html
Copyright © 2011-2022 走看看