mybatis返回List


mapperl.xml中:

<select id="getAmount" parameterType="int" resultType="java.util.HashMap">     
    <![CDATA[   
        select count(*) as amount, estate_type as type, status from estate where status=#{status}  group by estate_type 
    ]]>    
</select>  

在mapper.java中:

List<Map> getAmount(int status);  

需要注意的問題:

1.注意select標簽上設置為resultType,而不是ibatis支持的resultClass

2.返回map時select列中最好設置別名。(經驗證,當不設置別名時,你需要這個來取數據map.get("count(*)"))。

3.在mybatis中,無論你指定還是不指定返回類型,mybatis都會默認的先將查詢回的值放入一個hashMap中(如果返回的值不止一條就是一個包含hashMap的list)。這其中的區別在於,如果你指定了返回類型,mybatis將會根據返回類型的實體類來從hashMap中獲取值並set到這個實體類中。如果不指定就默認返回一個HashMap<String,Object>(List<HashMap<String,Object>>)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM