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

前端之家收集整理的这篇文章主要介绍了通常如何在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相关文章