背景故事
最近接手了一个spingboot的项目后,也是一直在折腾这个项目,研究持久层框架的时候看了一下pagehelper的整合方法。我i自己也搜了一下,发现有两种方法,这里替自己总结一下,以备后用。
实际操作
一,java代码配置法
这种方法个人感觉比较繁琐不是很推荐,而且也不怎么符合springboot的理念,但是胜在也能够用,所以就列起来,万一以后接手的代码是用这种方式的也方便自己维护。
首先引入jar包。
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>4.1.6</version> </dependency>
然后,直接在启动类里面添加如下代码:
@Bean public PageHelper pageHelper(){ PageHelper pageHelper = new PageHelper(); Properties properties = new Properties(); properties.setProperty("offsetAsPageNum","true"); properties.setProperty("rowBoundsWithCount","true"); properties.setProperty("reasonable","true"); properties.setProperty("dialect","mysql"); //配置mysql数据库的方言 pageHelper.setProperties(properties); return pageHelper; }
那么这样第一种办法就配置好了。
二、配置文件配置法
第二种方法就比较简单了,而且从引入jar包的名字就能看出官方推荐的是哪种配置方式了。
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.1.0</version> </dependency>
引入jar包后只要在application.properties或者application.yml里面加入相关的属性配置就好了,由于个人不太喜欢yml的形式,所以就只列一下application.properties的配置。
# pagehelper properties pagehelper.offsetAsPageNum=true pagehelper.rowBoundsWithCount=true pagehelper.pageSizeZero=true pagehelper.reasonable=false pagehelper.params=pageNum=pageHelperStart;pageSize=pageHelperRows; pagehelper.supportMethodsArguments=false
而且似乎pagehelper不需要配置dialect这个属性也能正常工作。
后话
以上内容都是在下的一些拙见,如有问题,欢迎指正。