org.apache.ibatis.exceptions.PersistenceException:Parameter ‘ids‘ not found. Available parameters...

5 篇文章 0 订阅
2 篇文章 0 订阅

错误org.apache.ibatis.exceptions.PersistenceException:

Error updating database. Cause: org.apache.ibatis.binding.BindingException: Parameter ‘ids’ not found. Available parameters are [array]
Cause: org.apache.ibatis.binding.BindingException: Parameter ‘ids’ not found. Available parameters are [array]

错误代码

//mapper.java 接口代码
package cn.xxxxxx.xxx.xxxx.mapper;
import java.util.List;
import cn.dyslzx.two.department.eneity.Dept;
public interface DeptMapper {
	//错误在这里 
	public int delete(Long[] ids);
}
//mapper.xml代码
<delete id="delete" parameterType="Long[]" >
		delete from department
		<foreach collection="ids" item="id" open="where id in(" close=")" separator=",">
			#{id}
		</foreach>
	</delete>
//测试类代码
@Test
	void testDelete() throws Exception {
		Long[] ids = {56l,57l};
		mapper.delete(ids);
		session.commit();
	}

Mybatis 中有两种写法 :

一. 使用默认key传值 但是,本人使用并没有成功.
二. 使用注解@Param(" ")
//接口代码中的 Long[] ids 前面没有写 @Param("ids")
public int delete(Long[] ids);

只要把@Param(" 数组名 ")直接加上就可以使用了.

希望各位大神批评指正,感谢
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值