Maven实现分页效果
2019-07-02 18:46
22 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_43811598/article/details/94466070
完成效果
1 导jar包
在pom.xml文件中标签下添加如下代码
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.2</version> </dependency>
按住Ctrl鼠标点击包名可以查看对应代码即导入成功
2 修改配置加载映射文件
修改UserMapper.xml,添加如下代码
<property name="mapperLocations" value="classpath:mapper/*.xml"/> <property name="plugins"> <array> <bean class="com.github.pagehelper.PageInterceptor"> <property name="properties"> <props> <prop key="helperDialect">mysql</prop> <prop key="reasonable">true</prop> </props> </property> </bean> </array> </property>
3 修改页面请求路径
<li><a href="${pageContext.request.contextPath}/user/findAll.do?page=1&size=5" aria-label="Previous">首页</a></li>
请求路径中加上page 和 size
page:当前页码
size:每页的记录条数
4 修改service中的方法
执行具体代码前PageHelper.startPage(page,size)
@Override public List<UserInfo> findAll(int page,int size) { PageHelper.startPage(page,size); return userDao.findAll(); }
5 Controller得到的userinfos对象装到pageinfo对象里
@RequestMapping("/findAll.do") public ModelAndView findAll(@RequestParam(defaultValue = "1")int page,@RequestParam(defaultValue = "5")int size) { List<UserInfo> infos = userService.findAll( page,size); PageInfo pageInfo = new PageInfo(infos); ModelAndView mv = new ModelAndView(); //调用保存数据函数 mv.addObject("pageInfo",pageInfo); mv.setViewName("user-list"); return mv; }
6 JSP代码
<div class="box-tools pull-right"> <ul class="pagination"> <li><a href="${pageContext.request.contextPath}/user/findAll.do?page=1&size=5" aria-label="Previous">首页</a></li><li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageInfo.pageNum-1}&size=5">上一页</a></li> <c:forEach begin="1" end="${pageInfo.pages}" var="pageNum"> <li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageNum}&size=5">${pageNum}</a></li> </c:forEach> <li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageInfo.pageNum+1}&size=5">下一页</a></li> <li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageInfo.pages}&size=5" aria-label="Next">尾页</a></li> </ul> </div>
只是每次换页都需要重新链接数据库读取数据,这一点是很不实用的,在实际的应用中大概会有所优化。
相关文章推荐
- bootstrap + mybatis + maven + springmvc 实现分页效果
- 用table,js实现web动态取数据并实现分页效果
- 采用Jquery无刷新分页插件jquery.pagination.js 实现无刷新分页效果
- php分页效果的实现
- js下通过getList函数实现分页效果的代码
- 原生js实现带运动的分页效果
- 分页效果的实现
- 简单的分页效果(servlet实现)
- nodejs+bootstrap实现分页效果
- OFBiz框架实现分页效果
- [Android UI界面] 怎样实现ListView分页效果?
- 分页学习总结-2-自定义标签实现分页效果-1
- 在java页面中实现分页效果
- PageBean方式实现分页效果 &n…
- 使用mybatis插件PageHelper实现分页效果
- 实现分页效果的函数
- GridView手写数据源并实现分页效果
- android开发之&使用ViewPager加gridView实现菜单按钮分页滑动(类似QQ表情选择翻页效果)
- 在django, xlrd 基础下使用jq实现简单的ajax分页效果
- thinkphp ajax 无刷新分页效果的实现