给我一个完整的示例,包括配置文件
时间: 2024-02-22 11:56:46 浏览: 19
好的,以下是一个使用 PageHelper 实现 MySQL 分页的示例:
1. 添加依赖
在 `pom.xml` 文件中添加以下依赖:
```xml
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.3.0</version>
</dependency>
```
2. 配置 PageHelper
在 `application.properties` 文件中添加以下配置信息:
```properties
# 设置 PageHelper 的属性
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql
```
3. Mapper 接口和 SQL 语句
在 Mapper 接口中添加以下方法:
```java
@Mapper
public interface UserMapper {
List<User> getUsers();
@Select("SELECT * FROM user")
@com.github.pagehelper.PageHelper
List<User> getUsersByPage(int pageNum, int pageSize);
}
```
其中,`@com.github.pagehelper.PageHelper` 注解用于告诉 PageHelper 对该方法进行分页处理。
在 SQL 语句中添加 `LIMIT` 语句,例如:
```sql
SELECT * FROM user LIMIT #{pageNum}, #{pageSize}
```
4. 分页查询
在 Service 层中调用 Mapper 方法进行分页查询,例如:
```java
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public PageInfo<User> getUsersByPage(int pageNum, int pageSize) {
PageHelper.startPage(pageNum, pageSize);
List<User> userList = userMapper.getUsersByPage(pageNum, pageSize);
return new PageInfo<>(userList);
}
}
```
其中,`PageHelper.startPage(pageNum, pageSize)` 用于告诉 PageHelper 对接下来的查询进行分页处理,`new PageInfo<>(userList)` 用于将查询结果封装为 PageInfo 对象,以便于前端进行分页展示。
以上就是一个完整的使用 PageHelper 实现 MySQL 分页的示例,希望能够帮助到你。