方式一:启动类配置分页插件(Application.java)
1 /** 2 * pageHelper分页插件 3 */ 4 @Bean 5 public PageHelperByMyself pageHelper(){ 6 PageHelperByMyself pageHelper = new PageHelperByMyself(); 7 Properties properties = new Properties(); 8 properties.setProperty("offsetAsPageNum","true"); 9 properties.setProperty("rowBoundsWithCount","true"); 10 properties.setProperty("reasonable","true"); 11 properties.setProperty("dialect","postgresql"); //配置postgresql数据库的方言 12 pageHelper.setProperties(properties); 13 return pageHelper; 14 }
方式二:分页工具类重写配置文件方法(子类继承PageHelper.java重写setProperties方法)
1 public void setProperties(Properties p) { 2 p.setProperty("offsetAsPageNum","true"); 3 p.setProperty("rowBoundsWithCount","true"); 4 p.setProperty("reasonable","true"); 5 p.setProperty("dialect","postgresql"); 6 super.setProperties(p); 7 }
方式三:mybatis配置文件配置分页插件(mybatis-config.xml)
1 <plugins> 2 <!-- packageName为PageHelper类所在包名 --> 3 <!--<plugin interceptor="com.github.pagehelper.PageHelper">--> 4 <!--<!–mysql, mariadb, sqlite, oracle, hsqldb, postgresql, sqlserver, db2, informix, h2;–>--> 5 <!--<property name="dialect" value="oracle"/>--> 6 <!--<!– 该参数默认为false--> 7 <!--设置为true时,会将RowBounds第一个参数offset当成pageNum页码使用--> 8 <!--和startPage中的pageNum效果一样 –>--> 9 <!--<property name="offsetAsPageNum" value="true"/>--> 10 <!--<!– 该参数默认为false--> 11 <!--设置为true时,使用RowBounds分页会进行count查询 –>--> 12 <!--<property name="rowBoundsWithCount" value="true"/>--> 13 <!--<!– 设置为true时,如果pageSize=0或者RowBounds.limit = 0就会查询出全部的结果--> 14 <!--(相当于没有执行分页查询,但是返回结果仍然是Page类型) –>--> 15 <!--<property name="pageSizeZero" value="true"/> --> 16 <!--<!– 3.3.0版本可用 - 分页参数合理化,默认false禁用--> 17 <!--启用合理化时,如果pageNum<1会查询第一页,如果pageNum>pages会查询最后一页--> 18 <!--禁用合理化时,如果pageNum<1或pageNum>pages会返回空数据 –>--> 19 <!--<property name="reasonable" value="true"/>--> 20 <!--</plugin>--> 21 <!-- packageName为PageHelperByMyself类所在包名 --> 22 <plugin interceptor="com.wondersgroup.common.page.PageHelperByMyself"> 23 <!--mysql, mariadb, sqlite, oracle, hsqldb, postgresql, sqlserver, db2, informix, h2;--> 24 <property name="dialect" value="postgresql"/> 25 <!-- 该参数默认为false 26 设置为true时,会将RowBounds第一个参数offset当成pageNum页码使用 27 和startPage中的pageNum效果一样 --> 28 <property name="offsetAsPageNum" value="true"/> 29 <!-- 该参数默认为false 30 设置为true时,使用RowBounds分页会进行count查询 --> 31 <property name="rowBoundsWithCount" value="true"/> 32 <!-- 设置为true时,如果pageSize=0或者RowBounds.limit = 0就会查询出全部的结果 33 (相当于没有执行分页查询,但是返回结果仍然是Page类型) --> 34 <property name="pageSizeZero" value="true"/> 35 <!-- 3.3.0版本可用 - 分页参数合理化,默认false禁用 36 启用合理化时,如果pageNum<1会查询第一页,如果pageNum>pages会查询最后一页 37 禁用合理化时,如果pageNum<1或pageNum>pages会返回空数据 --> 38 <property name="reasonable" value="true"/> 39 </plugin> 40 <!-- mybatis-paginator --> 41 <plugin interceptor="com.github.miemiedev.mybatis.paginator.OffsetLimitInterceptor"> 42 <!--<property name="dialectClass" value="com.github.miemiedev.mybatis.paginator.dialect.MySQLDialect"/>--> 43 <!--<property name="dialectClass" value="com.github.miemiedev.mybatis.paginator.dialect.OracleDialect"/>--> 44 <!--<property name="dialectClass" value="com.github.miemiedev.mybatis.paginator.dialect.SQLServer2005Dialect"/>--> 45 <!--<property name="dialectClass" value="com.github.miemiedev.mybatis.paginator.dialect.SQLServerDialect"/> --> 46 <property name="dialectClass" value="com.github.miemiedev.mybatis.paginator.dialect.PostgreSQLDialect"/> 47 </plugin> 48 49 </plugins>
方式四:springboot配置文件配置分页插件(application.yml)
1 pagehelper: 2 # 数据库方言 mysql 3 helper-dialect: mysql 4 5 # 分页参数合理化 6 # 默认是false。 7 # 启用合理化时,如果pageNum<1会查询第一页,如果pageNum>pages会查询最后一页; 8 # 禁用合理化时,如果pageNum<1或pageNum>pages会返回空数据 9 reasonable: true 10 11 # 支持通过 Mapper 接口参数来传递分页参数 12 # 默认值 false 13 support-methods-arguments: true 14 15 # 为了支持startPage(Object params)方法,增加了该参数来配置参数映射, 16 # 用于从对象中根据属性名取值 17 # 默认值为 countSql
标签:插件,springboot,--,pageHelper,setProperty,true,分页 From: https://www.cnblogs.com/zhncnblogs/p/17972507