關於ibatis 查詢少量字段 返回map 的method

最近項目中老是遇到需要查詢一張表的幾個字段, 但是通用的commonColumns 爲了方便確實寫的全部字段,考慮到性能和自己取數據時候的方便,於是想到了之前用hibernate的時候,那個jdbcTemplate 就可以隨心所欲的取數據 當然map 類型也在其中;然後就在ibatis sqlmap裏面想了下,用java.util.HashMap做查詢結果封裝類,用map做參數,這樣就可以想查幾個字段就查幾個字段,同時也不干擾其他查詢,也不會添加若干個 commonColumns了

下面就是sql的 詳細:

<select id="countSummary" parameterClass="map" resultClass="java.util.HashMap">
     <![CDATA[ select id,name from task where deal_status is not null ]]>
<slect>
而對於在dao層得做法也是很簡單的,只需要用 SqlMapClientTemplate.queryForList("sql"); 就可以查詢出一個List<Map<String,String>> 的數據了
當然取數據就是直接重list 裏面拿到map 然後根據鍵值對取值 (這裏要值得注意的是, 數據庫返還回來的map裏面 鍵值是字段名稱的大寫)比如name 就變爲NAME


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章