当你使用 MyBatis-Plus 的 QueryWrapper 进行条件查询时,你可以根据具体的需求使用不同的方法进行条件构造。下面是一些详细的代码示例:

// 创建 QueryWrapper 对象
QueryWrapper<User> queryWrapper = new QueryWrapper<>();

// 等值条件查询
queryWrapper.eq("age", 25);

// 模糊条件查询
queryWrapper.like("name", "John");

// 排序查询
queryWrapper.orderByAsc("age");

// 分页查询
Page<User> page = new Page<>(1, 10);
userMapper.selectPage(page, queryWrapper);
List<User> userList = page.getRecords();
// 创建 QueryWrapper 对象
QueryWrapper<User> queryWrapper = new QueryWrapper<>();

// 嵌套条件查询
queryWrapper.nested(wrapper ->
        wrapper.eq("age", 25)
                .like("name", "John")
                .or()
                .eq("age", 30)
                .like("name", "Tom")
);

// 自定义查询字段
queryWrapper.select("id", "name", "age");

// 分页查询
 @GetMapping("/advicepage")
    public Result advicePage(@RequestParam Integer pageNum,
                             @RequestParam Integer pageSize,
                             @RequestParam(defaultValue = "") String nickname) {
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("role", "ROLE_TEACHER");
        if (!"".equals(nickname)){
            queryWrapper.like("nickname",nickname);
        }
        return Result.success(userService.page(new Page<>(pageNum, pageSize),queryWrapper));
    }

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐