如果你也在用Mybatis,建议尝试该分页插件,这个一定是最方便使用的分页插件。
该插件目前支持Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库分页。
如何使用?
1.把jar包添加到service工程中
(因官方提供的代码对逆向工程支持的不好,所以附连接)
链接:https://pan.baidu.com/s/1C3s9wKc1j6JQv9N6etM7nQ 密码:3wzh
(1)下载,然后把pagehelper工程导入到eclipse中(existing maven project)
(2)右键导入工程--》run as --》maven install(这样就自己弄好了jar包)
(3)打开该工程的pom.xml,复制该坐标
(4)在自己的工程中的pom.xml添加dependency依赖这个复制的jar
2.在mybatis的SqlMapConfig.xml中配拦截器插件(设数据库类型)
<plugins>
<!-- com.github.pagehelper为PageHelper类所在包名 -->
<plugin interceptor="com.github.pagehelper.PageHelper">
<!-- 设置数据库类型 Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库-->
<property name="dialect" value="mysql"/>
</plugin>
</plugins>
3.在代码中使用(先test测试)
新建PageHelperTest.java
(1)设置分页信息
(2)获取分页信息
@Test
public void testPageHelper() throws Exception {
//初始化spring容器
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:spring/applicationContext-*.xml");
//获得Mapper的代理对象
TbItemMapper itemMapper = applicationContext.getBean(TbItemMapper.class);
//设置分页信息
PageHelper.startPage(1, 30);
//执行查询
TbItemExample example = new TbItemExample();
List<TbItem> list = itemMapper.selectByExample(example);
//取分页信息
PageInfo<TbItem> pageInfo = new PageInfo<>(list);
System.out.println(pageInfo.getTotal());
System.out.println(pageInfo.getPages());
System.out.println(pageInfo.getPageNum());
System.out.println(pageInfo.getPageSize());
}