mybatis的分页插件使用
现在实现简单的分页查询没有以前手写代码那么复杂了,以前写分页查询,我们需要设置好多的属性,并且还需要计算才能得出我们想要的页面数据,而现在我们只需要引入一个插件就可以了,实现mybatis分页查询只需要三个步骤就可以实现了。
我这里使用的是maven仓库,如果没有配置好maven的小伙伴,我在之前的博客也是有说明的:
https://blog.csdn.net/qq_44739706/article/details/105904102
第一步:在maven仓库引入pagehelper的坐标
<!--引入mybatis分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.11</version>
</dependency>
第二步:我们需要在mybatis的xml文件里进行配置(这里需要注意的地方是mybatis的xml文件标签是有顺序的,如果报错了,就换一下位置)
<plugins>
<!-- com.github.pagehelper为PageHelper类所在包名 -->
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<property name="param1" value="value1"/>
</plugin>
</plugins>
第三步:使用
public static void main(String[] args)throws Exception{
//1、读取主配置文件
InputStream in=Resources.getResourceAsStream("SqlMapConfig.xml");
//2、创建一个SqlSessionFactory工厂
SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
SqlSessionFactory factory=builder.build(in);
//3、使用工厂SqlSession对象
SqlSession session=factory.openSession();
//4、使用SqlSession创建Dao接口的代理对象
IUserDao userDao=session.getMapper(IUserDao.class);
//在查询之前只需要调用,传入页码(pageNum>=1),以及分页每页的大小(pageSize)
PageHelper.startPage(1,2);
//5、使用代理对象执行方法
List<User> users=userDao.findAll();
for (User user:
users) {
System.out.println(user);
}
PageInfo pageInfo=new PageInfo(users);
long total = pageInfo.getTotal();
int size = pageInfo.getSize();
System.out.println("页面大小:"+size);
System.out.println("总页数:"+total);
//6、释放资源
session.close();
in.close();
}
}
效果图:
还没有评论,来说两句吧...