Mybatis逻辑分页BowBounds
mybatis中使用BowBounds进行逻辑分页,就是去除所有满足条件的值,舍弃前面offset条数据,然后取剩下数据的limit条
BowBounds源码:
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
package org.apache.ibatis.session;
public class RowBounds {
public static final int NO_ROW_OFFSET = 0;
public static final int NO_ROW_LIMIT = 2147483647;
public static final RowBounds DEFAULT = new RowBounds();
private final int offset;
private final int limit;
public RowBounds() {
this.offset = 0;
this.limit = 2147483647;
}
public RowBounds(int offset, int limit) {
this.offset = offset;
this.limit = limit;
}
public int getOffset() {
return this.offset;
}
public int getLimit() {
return this.limit;
}
}
使用:
mapper接口:
List<Role> selectRole(Role paramRole, RowBounds paramRowBounds);
使用
RowBounds bounds = new RowBounds(0, 5);//第一页,每页五条数据
List<Role> roles = this.roleMapper.selectRole(null, bounds);
mapper.xml:
<select id="selectRole" resultMap="BaseResultMap" parameterType="com.entity.Role" >
select
<if test="distinct" >
distinct
</if>
from ROLE
</select>