在 MyBatis 中傳入數組并遍歷的方法是使用 foreach
元素。以下是具體步驟:
<select id="selectUserList" parameterType="java.util.List" resultType="User">
SELECT * FROM users WHERE id IN
<foreach item="item" collection="list" open="(" separator="," close=")">
#{item}
</foreach>
</select>
這個示例中,parameterType
指定了傳入的參數類型為 java.util.List
,collection
屬性指定了需要遍歷的集合對象,item
屬性指定了在遍歷過程中的臨時變量名。
List
對象,例如:List<Integer> idList = Arrays.asList(1, 2, 3);
List<User> userList = sqlSession.selectList("selectUserList", idList);
這個示例中,idList
是一個包含要查詢的用戶 ID 的數組。
在執行 SQL 語句時,MyBatis 會自動遍歷傳入的數組,并將數組中的每個元素傳遞給 SQL 語句中的 foreach
元素中的臨時變量。