在iBatis中要进行批量删除时,通常传出去的是数组或List,所以配置文件中sql语句应该这样写
<delete id="delete" parameterClass="List"> delete from t_user where user_id in ( <iterate conjunction=","> #[]# </iterate>) </delete>
dao中如果传进来的是数组,则需要做相应的处理
public void deleteUsers(String[] userIdList) {
List<String> list = new ArrayList<String>();
for(String s:userIdList){
list.add(s);
}
getSqlMapClientTemplate().delete("delete", list);
}
对数组的另外一个处理方法就是把数组变成一个中间用多个“,”隔开的字符串,传进去也是可以的。