gpt4 book ai didi

java - 如何在 iBatis 中获取排序后的结果?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:28:34 25 4
gpt4 key购买 nike

我有一个包含 2 列 managerName、teamEmployee 的表 mgr_employee。
虽然我在 sql 中进行了排序,但我在 java 中得到了未排序的 resultMap。
如何获得排序的 map ?为什么 iBatis 会混淆 resultMap?

<resultMap id="s_filter_defaults_ResultMap" class="java.util.HashMap">
<result property="key" column="managerName"/>
<result property="value" column="count"/>
</resultMap>

<select id="mCount" parameterClass="java.util.HashMap" resultMap="mcount_ResultMap">
<![CDATA[
select managerName, count(teamEmployee) AS count
from mgr_employee
group by managerName
order by managerName;
]]>
</select>

调用上述sql的Java代码:

Map<String,Long> mCountMap = getSqlMapClientTemplate().queryForMap("mCount", "", "key", "value");

由于 sql 中的“order by”子句,mCountMap 未按预期排序。任何评论/建议,如何对 resultMap 进行排序?

最佳答案

我认为您的问题可能出在所使用的 Java 类型上。需要查询列表,而不是 Map,因为 Java HashMap(我想这就是查询将返回的内容)不支持排序。查看SqlMapDaoTemplate#queryForList()应返回所需内容的方法。

关于java - 如何在 iBatis 中获取排序后的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3122979/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com