Parameter ‘xxx‘ not found.Available parameters are[arg1,agr0,param1,param2]

这种错误应该是由于参数有多个,没有指定名称导致的~

举个例子

dao层的UserMapper接口里有一个方法insertUser

int insertUser( String userName, String password);

其次我们向逆向工程生成的UserMapper.xml映射文件中添加插入语句

然后调用insertUser方法 插入用户名和密码

 UserMapper mapper =  session.getMapper(UserMapper.class);
 mapper.insertUser("张三","1234");

此时运行就会报[arg1,arg2,param1,param2]这个错误。

有两个解决办法:

1.在insertUser方法添加@Param注解

int insertUser(@Param("userName") String userName,@Param("password") String password);

2.在UserMapper.xml映射文件中修改  用指定的参数来获取

总结:

当参数有多个时,我们需要指定参数名称,如果不指定参数名称,我们可以用默认的参数名称来获取param1
如果只有一个参数的时候 在映射文件中可以用任意名称获取

 

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据你提供的引用内容,我可以看出你遇到了一个错误。错误信息显示"Parameter 'startTime' not found. Available parameters are [arg1, arg0, param1, param2]" 。这个错误是由于在你的代码中找不到参数"startTime"导致的。相反,可用的参数是[arg1, arg0, param1, param2]。 为了解决这个问题,你需要确保在你的代码中正确地传递和使用参数"startTime"。可能有几种原因导致这个错误,例如拼写错误、参数未被正确声明或传递等等。你可以按照以下步骤来解决这个问题: 1. 首先,确认你的参数名字是否正确拼写。检查一下你在代码中使用参数"startTime"的地方,确保参数名字的大小写和拼写与声明时一致。 2. 确认参数是否被正确声明。在你的代码中,检查一下参数"startTime"是否在方法的参数列表中被正确声明。确保参数的类型和名称与方法的定义一致。 3. 确认参数是否被正确传递。如果你是在调用方法时遇到了这个错误,确保你在方法调用中正确传递了参数"startTime"。检查一下方法调用的参数列表,确保参数的顺序和类型与方法定义一致。 如果你仍然无法解决这个问题,可能需要进一步检查你的代码。你可以通过打印调试信息、查看日志文件或者调试器来定位问题所在。另外,你还可以参考引用和引用中关于查询和修改方法的使用方式,以确保你正确地使用和传递参数。 总结起来,当遇到"Parameter 'startTime' not found. Available parameters are [arg1, arg0, param1, param2]"这个错误时,你需要检查参数的拼写、声明和传递,确保它们与方法的定义和使用一致。如果问题仍然存在,可以使用调试工具来定位问题所在。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值