基于SSM框架下实现在网站中将查询信息分页展示,附源码以供学习

3 篇文章 0 订阅
3 篇文章 0 订阅

基于SSM框架下实现在网站中将查询信息分页展示,附源码以供学习

前情提要:由于最近在宁波游玩几天,博文没有跟上来,特地过来补上,这次也是基于上次的项目,在实现了简单的增删改查的基础上实现分页的操作,使得网页展示更加美观,新手可以从一篇开始学习,废话不多说,开始项目。

运行效果展示:
在这里插入图片描述
我们从上次的项目做起:
1.导入相关jar包:在ssm-web中的pom.xml文件中加入:

<dependency>
      <groupId>com.github.pagehelper</groupId>
      <artifactId>pagehelper</artifactId>
      <version>5.1.2</version>
</dependency>

2.接着在调用方法时,传入page和size参数到方法中,前者表示将要显示的页面序号,后者表示每页的记录数。在aside.jsp中找到跳转到user-list的调用并改为:

<a
						href="${pageContext.request.contextPath}/user/PagefindAll.do?page=1&size=5"> <i
							class="fa fa-circle-o"></i> 用户管理
					</a>

3.接着在Service层,执行具体代码之前使用方法Pagehelper.startPage(page,size),page和size通过函数参数传入,如

public List<UserInfo> PagefindAll(int page,int size){
        PageHelper.startPage (page,size);
        return userDao.findAll ();
    }

4.在controller层中,用PageInfo的构造方法将查询得到的List装入Pageinfos,并将它传入新页面,如(注意,我没有删除之前不分页的函数,所以用的PagefindAll.do导航,记得修改)

@RequestMapping("/PagefindAll.do")
public ModelAndView PagefindAll(@RequestParam(defaultValue = “1”) int page, @RequestParam(defaultValue = “5”) int size)//分页
{
List userInfos=userService.PagefindAll (page,size);
PageInfo pageInfo=new PageInfo (userInfos);
ModelAndView modelAndView=new ModelAndView ();
modelAndView.addObject (“pageInfoslist”,pageInfo);
modelAndView.setViewName (“user-list”);
return modelAndView;
}

5.找到user-list.jsp页面:将这部分替换:

<div class="box-tools pull-right">
							<ul class="pagination">
								<li><a href="#" aria-label="Previous">首页</a></li>
								<li><a href="#">上一页</a></li>
								<li><a href="#">1</a></li>
								<li><a href="#">2</a></li>
								<li><a href="#">3</a></li>
								<li><a href="#">4</a></li>
								<li><a href="#">5</a></li>
								<li><a href="#">下一页</a></li>
								<li><a href="#" aria-label="Next">尾页</a></li>
							</ul>
						</div>

修改为:

<div class="box-tools pull-right">
							<ul class="pagination">
								<li><a href="${pageContext.request.contextPath}/user/PagefindAll.do?page=1&size=5" aria-label="Previous">首页</a></li>
								<li><a href="${pageContext.request.contextPath}/user/PagefindAll.do?page=${pageInfoslist.pageNum-1}&size=5">上一页</a></li>
								<c:forEach begin="1" end="${pageInfoslist.pages}" var="pageNum">
									<li><a href="${pageContext.request.contextPath}/user/PagefindAll.do?page=${pageNum}&size=5">${pageNum}</a></li>
								</c:forEach>
								<li><a href="${pageContext.request.contextPath}/user/PagefindAll.do?page=${pageInfoslist.pageNum+1}&size=5">下一页</a></li>
								<li><a href="${pageContext.request.contextPath}/user/PagefindAll.do?page=${pageInfoslist.pages}&size=5" aria-label="Next">尾页</a></li>
							</ul>
						</div>

在上面的代码中
实现首页的跳转:调用重新调用controller层中的findAll函数,并令传入page的值为1,即可重现打开当前页面并令分页当前页为1。
实现尾页的跳转:调用重新调用controller层中的findAll函数,并令传入page的值为page的页数,即可重现打开当前页面并令分页当前页为尾页。
实现上/下一页的跳转:调用重新调用controller层中的findAll函数,并令传入page的值为当前页的减/加一,即可重现打开当前页面并令分页当前页为之前的上/下一页。
实现指定页的跳转:调用重新调用controller层中的findAll函数,并令传入page的值为选中的选项对应的值,即可重现打开当前页面并令分页当前页指定页。

到此,记录的分页就实现了。

本文部分介绍来源于:https://blog.csdn.net/weixin_42337746/article/details/94470730

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值