首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Mybatis3.0.6 组合hibernate3.6.8 Dialect 进行物理物理分页

2012-06-29 
Mybatis3.0.6 结合hibernate3.6.8 Dialect 进行物理物理分页mybatis插件配置:???插件处理类:?分页接口:pac

Mybatis3.0.6 结合hibernate3.6.8 Dialect 进行物理物理分页

mybatis插件配置:

?

?

?

插件处理类:

?

分页接口:

package com.xuanwu.sms.smstask.webmanager.common.crud.entity;import java.io.Serializable;public class Pagination implements Serializable{private static final long serialVersionUID = -6579435031214235862L;private int rowCount;// 总记录数private int pageSize = 15;// 每页记录数private int pageCount;// 总页数private int currentPage;// 当前页数private boolean next;// 是否能下一页private boolean previous;// 是否能上一页private boolean available = true;//是否分页public Pagination(){}public Pagination(String currentPage, int rowCount) {if (currentPage == null) {this.currentPage = 1;} else {this.currentPage = Integer.parseInt(currentPage);}this.rowCount = rowCount;// 计算总页数this.pageCount = (int) Math.ceil(this.rowCount / (double) this.pageSize);// 计算是否能上一页和下一页this.next = this.currentPage < this.pageCount;this.previous = this.currentPage > 1;}public Pagination pagination() {if (currentPage == 0) {this.currentPage = 1;}// 计算总页数this.pageCount = (int) Math.ceil(this.rowCount / (double) this.pageSize);// 计算是否能上一页和下一页this.next = this.currentPage < this.pageCount;this.previous = this.currentPage > 1;return this;} public int getPageCount() {return pageCount;}public int getCurrentPage() {return currentPage;}public int getRowCount() {return rowCount;}public void setRowCount(int rowCount) {this.rowCount = rowCount;}public int getPageSize() {return pageSize;}public void setPageSize(int pageSize) {this.pageSize = pageSize;}public int getCurrentMinRow() {return (currentPage-1) * pageSize;}public int getCurrentMaxRow() {return currentPage * pageSize - 1;}public int getNextPage() {if (next) {return currentPage + 1;}return currentPage;}public int getPreviousPage() {if (previous) {return currentPage - 1;}return currentPage;}public boolean isNext() {return next;}public boolean isPrevious() {return previous;}public int nextPage() {if (next) {currentPage = currentPage + 1;}return currentPage;}public int previousPage() {if (previous) {currentPage = currentPage - 1;}return currentPage;}public boolean isAvailable() {return available;}public void setAvailable(boolean available) {this.available = available;}}

?

pom.xml

?

mybatis版本:

??<dependency>
???<groupId>org.mybatis</groupId>
???<artifactId>mybatis</artifactId>
???<version>3.0.6</version>
???<scope>compile</scope>
??</dependency>

?

hibernate版本

??<dependency>
???<groupId>org.hibernate</groupId>
???<artifactId>hibernate-core</artifactId>
???<version>3.6.8.Final</version>
??</dependency>

1 楼 hillfallshore 2012-03-25   这个分页有什么优点? 2 楼 cczakai 2012-04-09   性能调优,对于千万级别的数据表,查询使用mybatis是用性能瓶颈的,因为mybatis本身是逻辑分页,所以效率很慢,使用物理分页就是为了解决这个问题的。

热点排行