Mybatis分页插件的原理
首先分页参数放到ThreadLocal中,拦截执行的sql,根据数据库类型添加对应的分页语句重写sql,例如
select * from table where a
转换为(根据数据库类型添加对应语句):
select count(*) from table where a
和
select * from table where a linit ,
计算出total总条数,pageNum当前第几页,pageSize每页大小和当前页的数据。是否为首页,是否为尾页,总页数等。