iBatis를 사용하여 DB에서 두 개의 열을 검색하려고합니다. 나는지도처럼 그것을하고 싶다. resultMap.get(col1) == col2Obj
.지도로 키 - 값 쌍 검색
동일한 질문에 here을 질문했지만 게시 된 솔루션이 나에게 적합하지 않으며 오류로 인해 실패합니다 : Cannot cast List as Map
. 나는 iBatis 2.3.4를 사용하고 있습니다. (?이 버전에서 사용할 수있는이 기능은 내가 관련 문서를 찾을 수없는 것입니다.)
내 문지도 :
<resultMap id="countMap" class="java.util.HashMap">
<result property="key" column="KEY" />
<result property="value" column="VALUE" />
</resultMap>
<select id="getCounts" resultMap="countMap" parameterClass="map">
SELECT
TYPE AS KEY,
SUM(VAL) AS VALUE
FROM MYTABLE
WHERE REGDATE BETWEEN #start_date# and #end_date#
GROUP BY TYPE
</select>
실제 쿼리 반환 :
|| KEY || VALUE ||
|| 4 || 304 ||
.toString()
를 호출 반환하는지도에 :
{"key" : "4", "value" : "304" }
키 집합이 { "키 ","value "}, resultMap은 내가 원하는 것을 수행하지 않는 것처럼 보입니다. 두 개 이상의 행이 발생할 수있는 매개 변수를 사용하여 쿼리를 호출 할 때 오류가 발생합니다.
나는 sqlMapClient.queryForMap("mymap.getCounts", args);
을 사용하여 쿼리를 실행하고 있습니다.
iBatis를 방법을 사용하는 데 필요한? 사용중인 코드를 게시 할 수 있습니까? 예외도 게시 할 수 있습니까? – nwinkler