1
iBatisを使用してDBから2つの列を取得しようとしています。私はそれを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は私がしたいことをしているようには見えません。 1行以上の結果となるパラメータでクエリを呼び出すと、エラーが発生します。
私はsqlMapClient.queryForMap("mymap.getCounts", args);
を使用してクエリを実行しています。
iBatisのメソッドを使用するために必要な?使用しているコードを投稿できますか?例外も投稿できますか? – nwinkler