Mybatis给开发者提供了一个拦截器接口,只要实现了该接口,就可以在Mybatis执行SQL前,作一些自定义的操作。分页插件就是在此基础上开发出来的,对于一个需要分页的SQL,插件会拦截并生成两段SQL。举一个简单的例子:
原SQL:
select * from table where name = 'xiaoming'
拦截后:
1.查询总数的SQL:
select count(*) from table where name = 'xiaoming'
2.分页的SQL:
select * from table where name = 'xiaoming' limit 1,10