1. 程式人生 > >myBatis 傳入陣列引數

myBatis 傳入陣列引數

DAO方法定義如下:

void deleteUserRole(long userId,long[] roleIds);

其中roleIds是一個數組,直接在mapper檔案中

<foreach collection="roleIds" open="(" close=")" separator=" or " item="value">
    #{value}
</foreach>

或者

<foreach collection="array" open="(" close=")" separator=" or " item="value">
    #{value}
</foreach>

以上兩種方式都是錯誤的。

正確的如下:

<foreach collection="arg1" open="(" close=")" separator=" or " item="value">
    #{value}
</foreach>

或者是介面定義成@Param(),此時collection可以用Name。

點滴總結,旨在提高。