在Camel路由中使用MyBatis从数据库表中选择键/值对我遇到了以下问题。
我的路线(作为内容丰富的一部分):
from("direct:resource")
.setBody().constant(123)
.to("mybatis:selectParameters?statementType=SelectList")
...;
映射器:
<select id="selectParameters" parameterType="int" resultType="java.util.HashMap">
SELECT
KEY
,VALUE
FROM
TABLE
WHERE
ID=#{id}
</select>
除了主体包含HashMaps的ArrayList(每个键/值对一个)而不是一个具有n k / v对的HashMap之外,一切正常。
非常感谢任何帮助
答案 0 :(得分:0)
我认为您应该使用statementType = SelectOne,因为您只在SQL查询中选择一行。因为使用SelectList,所以总是返回List,即使SQL结果集只有一行。
您可以在此处查看可能的语句类型:http://camel.apache.org/mybatis
当然,请参阅MyBatis文档,了解有关使用MyBatis等的更多详细信息。