背景故事
最近接手了一個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這個屬性也能正常工作。
后話
以上內容都是在下的一些拙見,如有問題,歡迎指正。
</div>