阅读量:7
MyBatis Plus 提供了多种复杂查询的方法,其中一些常用的方法包括:
- selectList(Wrapper wrapper):根据条件查询多条记录。
- selectOne(Wrapper wrapper):根据条件查询单条记录。
- selectCount(Wrapper wrapper):根据条件查询记录数。
- selectMaps(Wrapper wrapper):根据条件查询多条记录,并返回 Map 集合。
- selectPage(Page page, Wrapper wrapper):根据条件分页查询记录。
- selectMapsPage(Page page, Wrapper wrapper):根据条件分页查询记录,并返回 Map 集合。
上述方法中的 Wrapper
是一个查询条件构造器,可以用于构建查询条件,例如:
QueryWrapper<User> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("age", 20) .like("name", "张") .orderByDesc("id"); List<User> userList = userMapper.selectList(queryWrapper);
以上代码将根据条件 age=20
、name
包含"张",并按id
字段降序排序,查询符合条件的用户列表。
除了使用 Wrapper
构造查询条件外,MyBatis Plus 还提供了 Lambda 表达式的方式构建查询条件,可以更加方便地进行复杂查询。例如:
LambdaQueryWrapper<User> lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.eq(User::getAge, 20) .likeRight(User::getName, "张") .orderByDesc(User::getId); List<User> userList = userMapper.selectList(lambdaQueryWrapper);
以上代码与前面的示例相同,只是使用了 Lambda 表达式构建查询条件。
除了以上方法之外,MyBatis Plus 还提供了更多的查询方法,可以根据具体需求选择合适的方法进行复杂查询。具体使用方法可以参考 MyBatis Plus 的官方文档。