java中怎么做到所有查询显示数据都分页
时间: 2024-03-17 18:45:59 浏览: 25
在Java中,可以使用分页插件来实现所有查询显示数据都分页的功能。常用的分页插件有MyBatis的PageHelper和Spring Data JPA的Spring Data Commons等。
下面以MyBatis的PageHelper为例,介绍如何实现所有查询显示数据都分页的功能。
1. 添加PageHelper依赖
在Maven项目中,可以在pom.xml文件中添加如下依赖:
```xml
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.3.0</version>
</dependency>
```
2. 配置PageHelper
在Spring Boot项目中,可以在application.properties文件中添加如下配置:
```properties
# PageHelper配置
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql
```
3. 在Mapper中使用PageHelper
在Mapper的查询方法中,需要添加如下代码来启用分页功能:
```java
// 在查询方法中添加分页参数
public List<User> getUserList(@Param("pageNum") int pageNum, @Param("pageSize") int pageSize);
```
4. 在Controller中使用PageInfo
在Controller中使用PageInfo来获取分页信息和分页后的数据,例如:
```java
// 获取分页信息和分页后的数据
PageHelper.startPage(pageNum, pageSize);
List<User> userList = userService.getUserList(pageNum, pageSize);
PageInfo<User> pageInfo = new PageInfo<User>(userList);
// 将分页信息和分页后的数据存入ModelAndView
modelAndView.addObject("pageInfo", pageInfo);
modelAndView.addObject("userList", userList);
```
5. 在JSP页面中显示分页信息和分页后的数据
在JSP页面中使用JSTL标签来显示分页信息和分页后的数据,例如:
```jsp
<!-- 显示分页信息 -->
<p>当前第${pageInfo.pageNum}页,共${pageInfo.pages}页,共${pageInfo.total}条记录</p>
<!-- 显示分页后的数据 -->
<c:forEach items="${userList}" var="user">
<tr>
<td>${user.id}</td>
<td>${user.name}</td>
<td>${user.age}</td>
<td>${user.gender}</td>
<td>${user.email}</td>
</tr>
</c:forEach>
```
需要注意的是,上述代码只是一个简单的示例,您需要根据实际情况进行修改和完善。例如,需要根据不同的查询条件进行分页,需要对分页参数进行验证等。