一、说明
二、作用
学好wrapper十分重要,工作中
事半功倍
我们可以使用它来替代复杂的sql
(图片没截全,还有很多字段…)
三、使用基本字段
1、测试一
@Test
void test1(){
//查询name不为空的用户,并且邮箱不为空的用户,年龄大于等于12
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper
.isNotNull("name")
.isNotNull("email")
.ge("age",12); //ge:大于
userMapper.selectList(wrapper).forEach(System.out::println);
}
2、测试二
@Test
public void test2(){
QueryWrapper<User> wrapper = new QueryWrapper<>();
//查询名字 "酷小亚"
wrapper.eq("name","酷小亚");
User user = userMapper.selectOne(wrapper);//查询一个数据,出现多个结果使用List 或者Map
System.out.println(user);
}
3、测试三
@Test
public void test3(){
//查询年龄在 20~30岁之间的用户
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.between("age",20,30);//区间
Integer count = userMapper.selectCount(wrapper);//查询结果数
System.out.println(count);
}
4、测试四
@Test
public void test4(){
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.notLike("name","o")
.likeRight("email","t"); //类似于: t%
List<Map<String, Object>> maps = userMapper.selectMaps(wrapper);//查询结果数
maps.forEach(System.out::println);
}
5、测试五
@Test
public void test5(){
QueryWrapper<User> wrapper = new QueryWrapper<>();
//age 在子查询中查出来
wrapper.inSql("age", "21,22,23,24");
List<Object> objects = userMapper.selectObjs(wrapper);
objects.forEach(System.out::println);
}
测试六
@Test
public void test6(){
QueryWrapper<User> wrapper = new QueryWrapper<>();
//通过id进行降序
wrapper.orderByDesc("id");
//通过id进行升序
// wrapper.orderByAsc("id");
List<User> list = userMapper.selectList(wrapper);
list.forEach(System.out::println);
}