开发者

mybatis中的limit参数解读

目录
  • myBATis中的limit参数
    • 解决方法
  • mybatis分页中的小坑(limit 0.0 ,10)
    • 解决方案
  • 总结

    mybatis中的limit参数

    参数page=1,rows=3

    错误写法:

    select   *   from  xxx  limit  #{page},#{rows}

    报错:

    You have an error in your SQL syntax; check the manual that correspo编程nds to your mysql server version for the right syntax to use near ''1','3'' at line 1

    可以看出mybatis自动给我们的参数加了 引号 ' ',所以报错

    解决方法

    #{}改为${}

    正确写法:

    select   *   from  xxx  limit  ${page},${rows}

    mybatis分页中的小坑(limit 0.0 ,10)

    其中某个dao对应的mapper.XML配置如下:

    mybatis中的limit参数解读

    很正常分页对不对?

    然后系统一直报如下异常:

    mybatis中的limit参数解读

    很郁闷,哪里来的0.0,不是应该0吗??

    javascript决方案

    limit m,n = limit ${(page-1)*pagesize},${pagesize}​​​​​​​

    这里需要特别注意的是,传入参数时,page ,pagesize需为int或者integer类型!

    如果为其他类型,比如string,直接获取pagesize值将不会有错,但是(page-1)*pagphpesize是需要进行运算的!

    先进行http://www.devze.com类型转换,然后进行计算&mdashpython;->这也就是为什么是0.0!!

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新开发

    开发排行榜