QueryWrapper
组装查询条件
组装排序条件
组装删除条件
使用QueryWrapper实现修改功能
a>例1:组装查询条件
//查询用户名包含a,年龄在20到30之间,并且邮箱不为null的用户信息 @Test public void test1(){ QueryWrapperqueryWrapper = new QueryWrapper<>(); queryWrapper.like("user_name","a") .between("age",20,30) .isNotNull("email"); List list = userMapper.selectList(queryWrapper); list.forEach(System.out::println); }
b>例2:组装排序条件
//按年龄降序查询用户,如果年龄相同则按id升序排列 @Test public void test2(){ QueryWrapperqueryWrapper = new QueryWrapper<>(); queryWrapper.orderByDesc("age") .orderByAsc("uid"); List list = userMapper.selectList(queryWrapper); list.forEach(System.out::println); }
c>例3:组装删除条件
//删除email为空的用户 @Test public void test3(){ QueryWrapperqueryWrapper = new QueryWrapper<>(); queryWrapper.isNull("email"); int result = userMapper.delete(queryWrapper); System.out.println(result); }
d>例4:使用QueryWrapper实现修改功能
//将(年龄大于20并且用户名中包含有a)或邮箱为null的用户信息修改 @Test public void test4(){ QueryWrapperqueryWrapper = new QueryWrapper<>(); User user = new User(); user.setName("小明"); user.setEmail("xiaoming@qq.com"); queryWrapper.gt("age",20) .like("user_name","a") .or() .isNull("email"); int result = userMapper.update(user,queryWrapper); System.out.println(result); }