后台代码部分
首先在pom文件下引入pagehelper这个插件
<!-- mybatis 分页依赖 start-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.2</version>
</dependency>
controller层
@RequestMapping("/find")
public String findAll(@RequestParam(value = "pageNum" , defaultValue = "1") int pageNum,@RequestParam(value = "pageSize", defaultValue = "5") int pageSize,Integer id, Model model) {
User user = userService.queryDateUserById(id);
if (user.getRole() == 1){
PageInfo<User> pageInfo = userService.queryUserDate(pageNum,pageSize);
model.addAttribute("pageInfo", pageInfo);
return "behindindex";
}else{
model.addAttribute("errMsg","权限不足");
return "houtaiindex";
}
}
在这里引入两个参数pageNum,pageSize。
Service层
PageInfo<User> queryUserDate(int pageNum, int pageSize);
Impl
public PageInfo<User> queryUserDate(int pageNum, int pageSize) {
PageHelper.startPage(pageNum, pageSize);
List<User> list = userMapper.queryAll();
PageInfo<User> pageInfo = new PageInfo<>(list);
return pageInfo;
}
Mapper层 不用改 插件会自动帮你做好
前端修改(JSP页面)
<c:forEach var="obj" items="${pageInfo.list}" varStatus="status">
<tr>
<td>
${status.count}
</td>
<td>
${obj.username}
</td>
<td>
${obj.password}
</td>
<td>
${obj.loginfrequency}
</td>
<td>
<fmt:formatDate value="${obj.logintime}" pattern="yyyy-MM-dd HH:mm:ss"/>
</td>
<td>
<a href="${ctx}/user/findbyid?id=${obj.id}">修改</a>
<a href="${ctx}/user/delUser?id=${obj.id}" onclick="del()">删除</a>
</td>
</tr>
</c:forEach>
<span>共 ${pageInfo.pageNum} 页 共 ${pageInfo.total} 条</span>
可以显示在页面的左边例如 共1页 共5条数据
<nav class="box-tools pull-right" aria-label="Page navigation example" style="margin-right: 2px">
<ul class="pagination">
<li class="page-item" id="previous"><a class="page-link" href="javaScript:gotoPage('${pageInfo.pageNum-1}')">上一页</a></li>
<c:forEach begin="1" end="${pageInfo.pages}" var="i" step="1" >
<li class="page-item">
<a class="page-link" href="javaScript:gotoPage('${i}')">${i}</a>
</li>
</c:forEach>
<li id="next" class="page-item"><a class="page-link" href="javaScript:gotoPage('${pageInfo.pageNum+1}')">下一页</a></li>
</ul>
</nav>
js部分
ifpage()
function gotoPage(pageNum) {
if (pageNum>=1 && pageNum<= ${pageInfo.total}){
var numPerPageSelectVal = ${pageInfo.pageSize};
// 跳转
location.href = "${ctx}/user/find?id="+"${sessionScope.get("user").id}"+"&pageNum="+pageNum+"&pageSize="+"${pageInfo.pageSize}";
}
}
function ifpage(){
if("${pageInfo.pageNum-1}"<1){
$("#previous").attr("class","page-item disabled")
}
if("${pageInfo.pageNum}">"${pageInfo.total}"/5){
$("#next").attr("class","page-item disabled")
}
}