一篇文章带你掌握MyBatis简化框架——MyBatisPlus( 六 )

基本条件查询在介绍条件查询前,我们需要先来介绍Wrapper:

  • Wrapper属于一种接口参数
  • Wrapper是我们的条件查询中所携带的进行条件判断的参数
  • 接口方法的参数中,会出现各种 Wrapper,比如 queryWrapper、updateWrapper 等
接下来我们就来介绍三种基本条件查询:
  1. 按条件查询
package com.itheima;import com.baomidou.mybatisplus.core.conditions.Wrapper;import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.itheima.dao.UserDao;import com.itheima.domain.User;import com.itheima.domain.query.UserQuery;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import java.util.List;import java.util.Map;@SpringBootTestclass Mybatisplus02DqlApplicationTests {    @Autowired    private UserDao userDao;    @Test    void testGetAll() {        //方式一:按条件查询        // 我们的条件查询一般采用QueryWrapper类型的类来创造Wrapper条件判断参数        QueryWrapper qw = new QueryWrapper();        // 我们采用QueryWrapper的一些方法来进行给予判断条件,后续我们会进行介绍        // 这里采用lt小于方法,后面跟String类型字符串代表数据库列名,在跟数值表示值        qw.lt("age",18);        // 我们采用userDao的selectList方法根据qw条件判断机制来进行获取数据        // 获取了User数值的List,并打印即可        List<User> userList = userDao.selectList(qw);        System.out.println(userList);    }}
  1. lambda格式按条件查询(方法版)
package com.itheima;import com.baomidou.mybatisplus.core.conditions.Wrapper;import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.itheima.dao.UserDao;import com.itheima.domain.User;import com.itheima.domain.query.UserQuery;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import java.util.List;import java.util.Map;@SpringBootTestclass Mybatisplus02DqlApplicationTests {    @Autowired    private UserDao userDao;    @Test    void testGetAll() {        //方式二:lambda格式按条件查询        QueryWrapper<User> qw = new QueryWrapper<User>();        // MyBatisPlus可支持Lambda表达式,我们使用lambda方法使后续操作均变为Lambda表达式形式        // 我们的String数据库列名可以采用Lambda表达式形式书写        qw.lambda().lt(User::getAge, 10);        List<User> userList = userDao.selectList(qw);        System.out.println(userList);    }}

经验总结扩展阅读