mybatis plus3.3.0中有 SimpleQuery.list写法么
时间: 2023-11-24 08:19:02 浏览: 35
在 MyBatis Plus 3.3.0 版本中,是没有 `SimpleQuery.list()` 这个方法的。您可以使用 `BaseMapper.selectList()` 方法来实现相同的功能,代码如下:
```
QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
queryWrapper.select("user_id").in("dept_id", groups);
List<SysUser> userList = baseMapper.selectList(queryWrapper);
List<Integer> userIds = userList.stream().map(SysUser::getUserId).collect(Collectors.toList());
```
其中,`baseMapper` 是指继承了 `BaseMapper<SysUser>` 接口的 DAO 层。`selectList()` 方法可以传入 `QueryWrapper` 对象来实现查询功能,也可以传入 `null`,这将会查询表中的所有数据。最后使用 `Stream` API 将 `userList` 转换为 `userIds` 列表。
相关问题
把SimpleQuery.list(lqw, SysUserRole::getUserId);改成mybatis plus3.3.0写法
在 Mybatis Plus 3.3.0 中,可以使用 LambdaQueryWrapper 和 QueryWrapper 来构造查询条件。对于这个问题,可以按照以下方式重写:
```java
QueryWrapper<SysUserRole> wrapper = new QueryWrapper<>();
wrapper.lambda().eq(SysUserRole::getUserId, lqw.getQuery());
List<SysUserRole> list = sysUserRoleMapper.selectList(wrapper);
```
这里使用了 QueryWrapper 的 lambda 表达式方法来构造查询条件,其中 `SysUserRole::getUserId` 表示指定查询条件为 `userId = lqw.getQuery()`,`sysUserRoleMapper` 是 `SysUserRole` 对应的 Mybatis Mapper。
把SimpleQuery.list(lqw, SysUserRole::getUserId);改成mybatis plus 3.3.0写法
在 Mybatis Plus 3.3.0 中,可以使用 LambdaWrapper 和 QueryWrapper 来构造查询条件。对于这个问题,可以按照以下方式重写:
```java
QueryWrapper<SysUserRole> wrapper = new QueryWrapper<>();
wrapper.lambda().eq(SysUserRole::getUserId, lqw.getQuery());
List<SysUserRole> list = sysUserRoleMapper.selectList(wrapper);
```
这里使用了 QueryWrapper 的 lambda 表达式方法来构造查询条件,其中 `SysUserRole::getUserId` 表示指定查询条件为 `userId = lqw.getQuery()`,`sysUserRoleMapper` 是 `SysUserRole` 对应的 Mybatis Mapper。