mybatis limit的limit入参为(2,2)自动变为(0,4)

版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明

没错??利用存储过程实现查询,但是我的这个查询开销有点大(当数据量過大的时候),因为你要知道limit的底层原理呀,,假设你查limit 100010,那他会查询到1010个记录然后选出后10条给你的,你说开销大不大??

so。。。。创建一个存储过程

在java代码中调用存储过程这样就okle,,万事大吉?只带吃鸡

版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明

数据库使用的是mysql
要想在mybatis limit中使用分页查询,首先要清楚mysql中limit的用法

a是从第a+1条数据开始,b是指读取几条数据

   这两个参数传到后台。

  • 接着在对应的mapper文件中写一个接口调用这句sql语句
    注意:接口名一定要与上面的id名相同否则会找不到对应的sql语句

      

因为有两个不同参数,所以需要用到@Param这个注解

  • 然后写一个方法实现这个接口

      
  • 最后,调用这个方法查询数据
 
 

1.了解过程:在数据库服务器中sql語句实现分页便要每个查询语句都要写上limit(开始,结束)并且不能灵活的随前端变化,为此使用拦截器的方法过程:拦截器拦截请求的sql语呴(根据需要拦截的ID(正则匹配),进行拦截)并对根据前端传过来的页数,和每页的条数计算出limit(开始,结束)总条数,然后拼接箌sql语句后边。其中这个处理过程已经封装到了,分页插件中可以不用理解,直接使用

将获取到的查新结果放入reMap,然后前端获取到reMap的值,类似json格式的数据

前端jsp页面自己完成,我是用easyui做的,

代码写的有点乱我会继续改的,原谅小白一枚!!!!有什么问题就问,要源码嘚都可以。

我要回帖

更多关于 mybatis limit 的文章

 

随机推荐