springboot3整合pagehelper
时间: 2024-09-13 19:15:57 浏览: 48
Spring Boot 3 是 Spring 框架的一个版本,它简化了基于 Spring 的应用程序的配置和部署。PageHelper 是一个 MyBatis 的分页插件,它可以帮助开发者以非常简单的方式实现 MyBatis 的分页功能。
要在 Spring Boot 3 中整合 PageHelper,通常需要执行以下步骤:
1. 引入依赖:首先需要在项目的 `pom.xml` 文件中添加 PageHelper 的依赖。
```xml
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>最新版本</version>
</dependency>
```
2. 配置 PageHelper:通过 Spring Boot 的配置文件(如 `application.properties` 或 `application.yml`),配置 PageHelper 的相关属性,以便于更好地控制分页行为。
```properties
# application.properties 示例配置
pagehelper.helper-dialect=你的数据库方言,如 mysql, oracle, db2, h2 等
pagehelper.reasonable=true
pagehelper.support-methods-arguments=true
pagehelper.params=count=countSql
```
3. 使用 PageHelper:在代码中使用 PageHelper 进行分页查询。通常,可以在 MyBatis 的 Mapper 接口中添加分页查询的方法,在服务层或者直接在控制器层调用这些方法,并且传入分页参数。
```java
// 在Mapper接口中
public interface YourMapper {
List<YourEntity> selectYourEntityList(HashMap<String, Object> params);
}
// 在服务层中使用分页插件
@Service
public class YourService {
@Autowired
private YourMapper yourMapper;
public IPage<YourEntity> getYourEntityPage(Map<String, Object> params, int pageNum, int pageSize) {
Page<YourEntity> page = new Page<>(pageNum, pageSize);
PageHelper.startPage(pageNum, pageSize);
List<YourEntity> list = yourMapper.selectYourEntityList(params);
return page.setRecords(list);
}
}
```
4. 处理分页数据:最后,在控制器层通过调用服务层的方法获取分页数据,并将其返回给前端。
```java
@RestController
@RequestMapping("/your")
public class YourController {
@Autowired
private YourService yourService;
@GetMapping("/list")
public Result list(@RequestParam Map<String, Object> params, @RequestParam int pageNum, @RequestParam int pageSize) {
IPage<YourEntity> page = yourService.getYourEntityPage(params, pageNum, pageSize);
return Result.ok().data("page", page);
}
}
```
阅读全文