mybatis-plus的selectpage方法
时间: 2023-08-16 18:15:50 浏览: 271
MyBatis-Plus 提供了一个方便的方法 `selectPage()` 来实现分页查询。该方法结合了 MyBatis 的分页插件和 MyBatis-Plus 的查询条件,可以简化分页查询的操作。
首先,在 Mapper 接口中定义一个方法,使用 `@Param` 注解来传递查询条件和分页参数:
```java
public interface UserMapper extends BaseMapper<User> {
List<User> selectUserPage(@Param("page") Page<User> page, @Param("name") String name);
}
```
然后,在 Service 层调用 Mapper 接口的 `selectPage()` 方法进行分页查询:
```java
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public IPage<User> selectUserPage(Page<User> page, String name) {
return userMapper.selectUserPage(page, name);
}
}
```
在调用 `selectUserPage()` 方法时,需要传入一个 `Page` 对象来指定分页参数,以及其他的查询条件。例如,可以使用 `PageUtil` 工具类来构建分页对象:
```java
Page<User> page = PageUtil.getPage(currentPage, pageSize);
String name = "John";
IPage<User> userPage = userService.selectUserPage(page, name);
List<User> userList = userPage.getRecords();
```
这样,就可以通过 `selectPage()` 方法实现基于 MyBatis-Plus 的分页查询功能。
需要注意的是,分页查询的结果类型是 `IPage<T>`,其中 `T` 是实体类的类型。通过 `getRecords()` 方法可以获取当前页的数据列表,通过 `getTotal()` 方法可以获取总记录数,还可以通过其他方法获取分页相关的信息。
阅读全文