ibatis的select標籤有個屬性remapResults,該屬性默認值爲false; java
對於該屬性的應用狀況,如: 性能
<select id="getkeyvalues" parameterClass="map" resultMap="java.util.HashMap" remapResults="true">
SELECT $selectresultfields$ spa
FROM $ftablename$ rem
WHERE $selectcondityions$ get
</select> it
在這種查詢結果列不肯定(或是動態變化)的狀況下,爲保證查詢結果的正確就須要設置remapResults="true",或者當查詢結果只是一個動態變化的列時可用select $selectresultfield$ as resultfield 的形式來解決。 io
當設置remapResults爲"true"時:
iBATIS會在每次查詢的時候內省查詢結果來設置元數據,來保證返回恰當的結果。這個屬性會形成必定的性能損失,因此要謹慎使用,只在你須要的時候使用--查詢列發生變化,直接的,或者隱含的,檢索的表發生變化。 table