src/com/gssm/pagehelper/PageHelper.java
(开头部分) 6KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
package com.gssm.pagehelper;
import org.apache.ibatis.executor.Executor;
import org.apache.ibatis.mapping.MappedStatement;
import org.apache.ibatis.mapping.SqlSource;
import org.apache.ibatis.plugin.*;
import org.apache.ibatis.session.ResultHandler;
import org.apache.ibatis.session.RowBounds;
import java.util.List;
import java.util.Properties;
/**
* Mybatis - 通用分页拦截器
*
* @author liuzh/abel533/isea533
* @version 3.3.0
* 项目地址 : http://git.oschina.net/free/Mybatis_PageHelper
*/
@SuppressWarnings({"rawtypes", "unchecked"})
@Intercepts(@Signature(type = Executor.class, method = "query", args = {MappedStatement.class, Object.class, RowBounds.class, ResultHandler.class}))
public class PageHelper implements Interceptor {
private static final ThreadLocal<Page> LOCAL_PAGE = new ThreadLocal<Page>();
//sql工具类
private SqlUtil SQLUTIL;
//RowBounds参数offset作为PageNum使用 - 默认不使用
private boolean offsetAsPageNum = false;
//RowBounds是否进行count查询 - 默认不查询
private boolean rowBoundsWithCount = false;
//当设置为true的时候,如果pagesize设置为0(或RowBounds的limit=0),就不执行分页
private boolean pageSizeZero = false;
//分页合理化
private boolean reasonable = false;
/**
* 开始分页
*
* @param pageNum 页码
* @param pageSize 每页显示数量
*/
public static void startPage(int pageNum, int pageSize) {
startPage(pageNum, pageSize, true);
}
/**
* 开始分页
*
* @param pageNum 页码
* @param pageSize 每页显示数量
* @param count 是否进行count查询
*/
public static void startPage(int pageNum, int pageSize, boolean count) {
LOCAL_PAGE.set(new Page(pageNum, pageSize, count));
}
/**
* 获取分页参数
*
* @param rowBounds RowBounds参数
* @return 返回Page对象
后面还有 117 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。