木头人的gravatar头像
木头人 2017-12-04 21:55:57
mybatis使用pageHelper遇到的问题

      最近在做一个项目,我看了一下项目代码中使用了pageHelper,我心里也挺高兴的。毕竟使用插件,进行分页后,以后数据库迁移不用修改代码和xml配置。但是同事告诉我,项目中spring配置和mybatis配置中都没有引用插件的配置。这说明写的使用插件的地方,完全就没生效。

在mybatis中配置如下:

<plugins>
        <plugin interceptor="com.github.pagehelper.PageHelper">
            <!-- 设置数据库类型 Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库-->        
            <property name="dialect" value="mysql"/>
        </plugin>
    </plugins>

或者在spring配置文件中配置如下:

 <property name="plugins">
        <array>
          <bean class="com.github.pagehelper.PageHelper">
            <property name="properties">
              <value>
              <!-- 你使用的数据库类型(主流的都行) -->
                dialect=mysql
                reasonable=true
              </value>
            </property>
          </bean>
        </array>
      </property>

我最后也是无语了,没办法我们的功能都和分页有联系,又想偷懒就只能自己添加了。

然后在代码里面使用代码就能使用了。

PageHelper.startPage(pageNum, pageSize);

但是遇到一个问题,一直报错说是方言问题。查看了数据库版本信息,是MariaDB。但是这个也是mysql开源出来的啊。我换成这个了还是报错,索性直接去了。因为在pageHeler4.0之后可以省掉方言类,它会自动识别。但是还是不行。我这个人就是不服输,我换了更高的版本pageHelper 5.1,:jsqlparser-0.9.1。这里需要说明,5.0之后的配置和4.0之后的配置有所不同。

com.github.pagehelper.PageHelper变成了com.github.pagehelper.PageInterceptor

结果完美的解决了这个问题。


打赏

已有2人打赏

最代码客服的gravatar头像 最代码官方的gravatar头像
最近浏览
884728342 2022年3月23日
暂无贡献等级
pale-green  LV1 2020年9月20日
wttttts  LV2 2020年6月5日
Memorygzs  LV1 2020年5月2日
zhanglaoda  LV1 2020年4月16日
hoorain  LV4 2019年9月24日
dadah1996 2019年8月20日
暂无贡献等级
11111fadfad 2019年8月6日
暂无贡献等级
labulata 2019年5月24日
暂无贡献等级
demosss 2019年5月10日
暂无贡献等级
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友