mybaits 分页插件 pageHelper5.0.2
来源:互联网 发布:好听的网络歌曲 推荐 编辑:程序博客网 时间:2024/05/18 02:52
本文由黑壳网原创
本文来源mybaits 分页插件 pageHelper5.0.2~黑壳网
壳叔搞笑一刻
一个老帽儿从未乘过电梯。
这天,他来到一家饭店,站在电梯门口看见一位老太太进了电梯,过了一会儿,电梯门又打开了,出来了一位年轻漂亮的姑娘,他惊喜过望地想:“哇,要是把我老婆带来就好了。”
如果你在找Mybatis的分页插件,那么PageHelper一定会是你的首选。这一定会是使用最方便的分页插件。这个插件它支持任何复杂的单表,多表分页。
今天会详细介绍 pageHelper的5.0的使用
目前该插件,支持的数据库有
Oracle
Mysql
MariaDB
SQLite
Hsqldb
PostgreSQL
DB2
SqlServer(2005,2008)
Informix
H2
SqlServer2012
Derby
使用 PageHelper 你只需要在 classpath 中包含 pagehelper-x.x.x.jar 和 jsqlparser-0.9.5.jar。
如果你使用 Maven,你只需要在 pom.xml 中添加下面的依赖:
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.0.2</version></dependency>
与分页插件 PageHelper 5.0.0 同时发布的还有 pagehelper-spring-boot-starter。
如果你使用 Spring Boot,你只需要在 pom.xml 中添加下面的依赖:
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.0.0</version></dependency>
有关 pagehelper-spring-boot-starter 的用法可以参考集成示例 MyBatis-Spring-Boot
接着,在spring-mybatis.xml中是这样配置:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 数据库连接池 --> <property name="dataSource" ref="dataSource" /> <!-- 加载mybatis的全局配置文件 --> <property name="mapperLocations"> <array> <value>classpath:mapping/*.xml</value> </array> </property> <!-- <property name="configLocation" value="classpath:sqlMapConfig.xml" /> --> <property name="plugins"> <array> <bean class="com.github.pagehelper.PageInterceptor"> <property name="properties"> <value> helperDialect=mysql </value> </property> </bean> </array> </property> </bean>
配置结束后,进入正题,创建一个查询语句,用了pageHelper 查询语句与之前的一样。
select <include refid="product"></include> from product where 1 = 1
查询一个product 的表
/** * 产品管理界面 * * @param request * @param model * @return */ @RequestMapping(value = "productManage") private String productManage(HttpServletRequest request, Model model, ProductDetail productDetail, @RequestParam(required = true, defaultValue = "1") Integer page, @RequestParam(required = false, defaultValue = "10") Integer pageSize) { PageHelper.startPage(page, pageSize); List<ProductDetail> productDetails = productService.getProductManage(productDetail); PageInfo<ProductDetail> p = new PageInfo<ProductDetail>(productDetails); /** * 返回产品查询信息 */ model.addAttribute("productDetail", productDetail); /** * 返回产品信息集合 */ model.addAttribute("productDetails", productDetails); /** * 分页配置信息返回 */ model.addAttribute("page", p); return "manage/product/productManage"; }
可以看到,方法里有两个参数,前面也说了,这是一个demo,仅仅只是一个非常简单的分页效果。
PageHelper.startPage(page, pageSize);
这段代码表示,程序开始分页了,page默认值是1,pageSize默认是10,意思是从第1页开始,每页显示10条记录。
PageInfo这个类是插件里的类,这个类里面的属性还是值得看一看:
//当前页 private int pageNum; //每页的数量 private int pageSize; //当前页的数量 private int size; //由于startRow和endRow不常用,这里说个具体的用法 //可以在页面中"显示startRow到endRow 共size条数据" //当前页面第一个元素在数据库中的行号 private int startRow; //当前页面最后一个元素在数据库中的行号 private int endRow; //总记录数 private long total; //总页数 private int pages; //结果集 private List<T> list; //前一页 private int prePage; //下一页 private int nextPage; //是否为第一页 private boolean isFirstPage = false; //是否为最后一页 private boolean isLastPage = false; //是否有前一页 private boolean hasPreviousPage = false; //是否有下一页 private boolean hasNextPage = false; //导航页码数 private int navigatePages; //所有导航页号 private int[] navigatepageNums; //导航条上的第一页 private int navigateFirstPage; //导航条上的最后一页 private int navigateLastPage;
PageInfo p=new PageInfo(list);
然后mv.addObject(“page”, p);
这样在页面中就可以通过
ok是不是简单了许多,热爱编程,学习不停止!
黑壳网 www.bhusk.com
E-mail:keshu@bhusk.com
本文由 黑壳网的壳叔 创作,采用 知识共享署名 3.0 中国大陆许可协议 进行许可。
可自由转载、引用,但需署名作者且注明文章
- mybaits 分页插件 pageHelper5.0.2
- mybaits 分页插件 pageHelper5.0.2
- 使用mybatis分页插件PageHelper5.0.0遇到的问题总结
- PageHelper5.0.0分页插件与mybatis的集成
- 使用mybatis分页插件PageHelper5.0.0遇到的问题总结
- 使用mybatis分页插件PageHelper5.1.2遇到的问题
- mybatis系列五:使用pagehelper5插件进行分页
- spring mybaits分页插件集成
- Mybaits 基于pagehelper分页插件
- mybaits分页
- springboot mybaits集成分页组件
- mybatis pagehelp分页 Springmvc+Mybatis+pagehelper5.1.2+bootstrap table分页和分页查询
- Mybatis5.0.2分页插件
- Mybatis5.0.2分页插件
- MyBaits
- MyBaits
- Mybaits
- Mybaits
- 一个或者多个textarea输入的验证剩余的字数
- Win32API学习笔记第一章
- [华为机试题]合唱队
- Toolbar
- jdbc操作数据库的步骤
- mybaits 分页插件 pageHelper5.0.2
- rabbitmq java 例子
- use git
- [leetcode]: 28. Implement strStr()
- LintCode 两数组的交
- ZAB算法文章
- 网页中插入视频
- 09、react之 属性与状态的区别
- HTML5学习日记—拖放特性