mybatis 中,mapper.xml中遍歷list集合知識點


<select id="findAll" parameterType="java.util.List" resultType="string">
select uid from user where uid in
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item.uid,jdbcType=VARCHAR}
</foreach>
ORDER BY CREATE_DATE DESC
</select>
--------------------------------------------------------------------
相關解釋:foreach的主要用在構建in 條件中,它可以在sql語句中迭代一個集合;

1.foreach元素的屬性有item, index, collection, open, separator, close;

item--->集合中每一個元素進行迭代的別名;

index--->表示迭代過程中,每次迭代的位置,

open--->該語句以什么開始;

separator--->在每次進行迭代之間以什么符號作為分隔符;

close--->以什么結束,

在使用foreach的時候最關鍵的也是容易出錯的就是collection屬性,

該屬性是必須指定的,不同情況,屬性值不同;

有一下3中情況:

① 如果傳入的是單參數且參數類型是一個List的時候,collection屬性值為list;

②如果傳入的是單參數且參數類型是一個array數組的時候,collection的屬性值為array;

③如果傳入的參數是多個的時候,我們就需要把它們封裝成一個Map了;

--------------------------------------------------------------------


免責聲明!

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



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