一、照之前的步骤新建一个Springboot+MP工程
如下
二、条件查询
1、条件查询
@Test
void contextLoads() {
//条件查询
QueryWrapper wrapper=new QueryWrapper();
//所需条件
wrapper.lt("age",24);
List<User> userList=userDao.selectList(wrapper);
System.out.println(userList);
}
2、lambda条件查询
QueryWrapper<User> wrapper=new QueryWrapper<User>();
wrapper.lambda().lt(User::getAge,24);
List<User> userList=userDao.selectList(wrapper);
System.out.println(userList);
3、lambda条件查询2.0
三、条件查询-null值处理
1、首先建立一个包,里面新建UserQuery类
2、在测试类
模拟页面传过来的数据
连接条件
四、查询投影(查询结果只显示某些字段的数据)
//查询投影
LambdaQueryWrapper<User> lqw=new LambdaQueryWrapper<User>();
lqw.select(User::getAge,User::getEmail);//结果只显示age字段和email字段
List<User> userList=userDao.selectList(lqw);
System.out.println(userList);
QueryWrapper的写法
QueryWrapper<User> queryWrapper=new QueryWrapper<User>();
queryWrapper.select("age","email");
List<User> Lists=userDao.selectList(queryWrapper);
System.out.println(Lists);
查询总条数
QueryWrapper<User> queryWrapper=new QueryWrapper<User>();
queryWrapper.select("count(*) as count");
List<Map<String, Object> > userList=userDao.selectMaps(queryWrapper);
System.out.println(userList);
五、查询条件(sql语句学过的都会明白啥意思,只是需要记得程序咋写)
1、等于
2、范围查询
3、模糊查询
六、映射匹配兼容性
1、当数据库中的表中的字段与程序中类的名称不对等时
解决方法
public class User {
@TableField(value="pwd")
private String password;
}
2、“你有我没有”
解决办法
public class User {
@TableField(exist = false)
private Integer online;