昨天配置一下SSM框架下mybatis的pageHelper分页插件,结果启动报错,具体报一些注入失败之类的错误,之前也做过分页插件,以为是配置方法有兼容问题,换了几个配置方法还是一样的报错,折腾了半天才发现是忘记导包啦,除了要导入PageHelper.jar外还要到入 jsqlparse.jar包,然后就OK啦,虽然是低级错误希望对大家有帮助(需要的jar包可以直接点击下载)
下面是我的配置方法,当然网上有很多种,我就在这里写两种比较常见的方法:
第一种:
<plugins><plugin interceptor="com.github.pagehelper.PageHelper">
<!-- 设置数据库类型 Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库 --><property name="dialect" value="mysql" /></plugin></plugins>
第二种:
<!-- 插件 --><plugins><plugin interceptor="com.github.pagehelper.PageHelper"><!-- 4.0.0以后版本可以不设置该参数 --><property name="diaect" value="mysql"/><!-- 该参数默认为false设置为true时,会将RowBounds第一个参数offset当成pageNum页码使用和startPage中的pageNum效果一样--><property name="offsetAsPageNum" value="true"/><!--该参数默认为false设置为true时,使用RowBounds分页会进行count查询--><property name="rowBoundsWithCount" value="true"/><!-- 设置为true时,如果pageSize=0或者RowBounds.limit=0就会查询出全部的结果(相当于没有执行分页查询,只是返回结果仍然是Page类型)--><property name="pageSizeZero" value="true"/><!-- 3.3.0版本可用-分页参数合理化,默认false禁用启用合理化时,如果pageNum<1会查询第一页,如果pageNum>pages会查询最后一页禁用合理化时,如果pageNum<1或pages会返回空数据--><property name="reasonable" value="true"/><!-- 3.5.0版本可用-为了支持startPage(Object params)方法增加了一个'params'参数来配置参数映射,用于从Map或ServletRequest中取值可以配置pageNum,pageSize,count,pageSizeZero,reasonable,orderBy,不配置映射的用默认值不理解该含义的前提下,不要随便复制该配置--><property name="params" value="pageNum=start;pageSize=limit;"/><!-- 支持通过Mapper接口参数来传递分页参数 --><property name="supportMethodsArguments" value="true"/><!-- always重视返回PageInfo类型,check检查返回类型是否为PageInfo,none返回Page --><property name="returnPageInfo" value="check"/></plugin></plugins>
将其配置在mybatis.xml文件的<configuration>标签下即可
如果是简单的分页查询,第一种就能够实现,当然第二种相对详细一点,具体要看个人喜好啦