通常如何在iBatis中使用mysql的限制?

我使用iBatis 2.3.4

我有以下查询:

<select id="getUserList" resultMap="userListResult">
    SELECT
            id,name,login,email
    FROM
          users
</select>

当我需要提供分页时,我使用:

sqlMap.queryForList("base.getUserList",startPosition,numItems);

然后,iBatis可以无限制地生成查询,并在获取过程中跳过多余的数据.
我相信有极限的工作会更快.

我们如何才能推动iBatis一般使用LIMIT?可能吗?
也许我们可以形容一些方言?

最佳答案
将limit,offset作为参数传递怎么了?
例如(在Postgresql中,我认为Mysql是类似的):

<select id="getUserList" resultMap="userListResult">
    SELECT  ...
    FROM  users
    LIMIT #limit:INTEGER# OFFSET #offset:INTEGER#
</select>

然后在您的dao中,您可以编写以下代码:

  Map params = new HashMap();
  params.put("limit",10);
  params.put("offset",100);
  res = sqlMap.queryForList("base.getUserList",params);

相关文章

MySQL 死锁 是指两个或多个事务互相等待对方持有的锁,从而导...
在MySQL中,InnoDB引擎通过Next-Key Locking技术来解决幻读问...
在数据库事务管理中,Undo Log 和 Redo Log 是两种关键日志,...
case when概述 sql语句中的case语句与高级语言中的switch语句...
其实很简单,只是为了忘记,做个记录,用的时候方便。 不管是...
1.进入服务,找到mysql服务,在属性里找到mysql的安装路径 2...