MybatisPlus学习〖二〗条件构造器

MybatisPlus学习〖二〗

通过条件构造器我们可以构造出我们想要的查询语句

我们来看一下之前代码的具体实现

1. 插入信息

  /**
     * 插入信息
     */
    @Test
    public void insert(){
        UserDO userDO=new UserDO();
        userDO.setId(5);
        userDO.setUserName("张倩111");
        userDO.setUserPhone("1312312312312");
        userDO.setUserAge(18);
        userDO.setUserEmail("[email protected]");
        
        int row=userDOMapper.insert(userDO);
        System.out.println("影响了"+row+"行");
    }

这里我直接新建了userDO实体类,set了一些内容,然后直接调用我们自己写的userDOMapper里的insert方法,返回一个影响的行数

2. 用map查询信息

 @Test
    public void selectMap(){
        Map<String,Object> map=new HashMap<>();
        map.put("user_name","张倩");
        List<UserDO> userDOList=userDOMapper.selectByMap(map);
    }

这里我们建了个map用来映射查询内容,第一个参数一定是数据库的字段,第二个是内容,查询结果如下,这里我们查询了名叫张倩的人的所有信息,出现了两条
在这里插入图片描述
3. 条件构造器,查询user表中,user_name有张且年龄在20-30之间,且email不为空的用户

   //条件构造器,查询user表中,user_name有张且年龄在20-30之间,且email不为空的用户
    @Test
    public void selectByWrapper(){
        QueryWrapper<UserDO> queryWrapper=new QueryWrapper<>();
        queryWrapper.like("user_name","张").between("user_age",20,30).isNotNull("user_email");
        List<UserDO> userDOList=userDOMapper.selectList(queryWrapper);
    }

这里我们用了条件构造器QueryWrapper,这里直接拼接出查询语句like(“user_name”,“张”).between(“user_age”,20,30).isNotNull(“user_email”);

  • 这里面的字段一定是数据库字段,like对应了sql里面的like,第一个参数是对应的数据库字段,第二个参数是like后跟的参数,查询名字中有"张"的.
  • between这个方法也是对应的sql里面的between语句,第一个参数为数据库字段,第二个参数<字段对应查询信息<第三个参数
  • isNotNull也是对应语句,里面的参数不为空

在这里插入图片描述

未完待续

发布了69 篇原创文章 · 获赞 54 · 访问量 9593

猜你喜欢

转载自blog.csdn.net/kingtok/article/details/102328160
今日推荐