mybatisplus3.3.0如何实现分页
时间: 2023-10-31 12:54:04 浏览: 136
MyBatis-Plus 3.3.0 提供了简单而方便的分页插件,可以帮助你实现分页功能。以下是使用 MyBatis-Plus 分页的步骤:
1. 在你的数据库配置文件中,设置支持物理分页的数据库类型。例如,在 Spring Boot 中,可以在 `application.yml` 或 `application.properties` 文件中添加以下配置:
```yaml
mybatis-plus:
configuration:
db-type: mysql
```
2. 在你的数据访问层(DAO)接口中,继承 `BaseMapper` 接口。这个接口来自 MyBatis-Plus,提供了一些基本的 CRUD 方法,包括分页查询。
```java
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface YourMapper extends BaseMapper<YourEntity> {
// 添加自定义的查询方法
}
```
3. 在你的业务层(Service)中,使用 `Page` 对象进行分页查询。可以通过调用 `Page` 的构造方法来指定当前页码和每页显示的记录数。
```java
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
public class YourService {
@Autowired
private YourMapper yourMapper;
public Page<YourEntity> getEntitiesByPage(int pageNum, int pageSize) {
// 创建一个 Page 对象
Page<YourEntity> page = new Page<>(pageNum, pageSize);
// 调用 selectPage 方法进行分页查询
yourMapper.selectPage(page, null);
return page;
}
}
```
4. 最后,在你的控制器(Controller)中,调用业务层的方法获取分页结果,并将结果返回给前端。
```java
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/your")
public class YourController {
@Autowired
private YourService yourService;
@GetMapping("/entities")
public Page<YourEntity> getEntitiesByPage(int pageNum, int pageSize) {
return yourService.getEntitiesByPage(pageNum, pageSize);
}
}
```
这样,你就可以实现基于 MyBatis-Plus 的分页查询了。记得根据你使用的数据库类型设置 `db-type` 配置项,以便 MyBatis-Plus 选择正确的分页语句生成器。
阅读全文