Parameter 'xxx' not found. Available parameters are [arg0, param1, parms, param2]

org.apache.ibatis.binding.BindingException: Parameter 'eProjCode' not found. Available parameters are [arg0, param1, parms, param2]


报错日志:
报错日志
    从上截图中可以看出,主要问题是没有找到对应的参数,我们先看看dao层的代码和mapper.xml中的代码:
DAO层接口
mapper.xml中代码的展示
    可以看出,dao层传入了一个对象和一个map(之前参数是一个对象,后来由于需求的变更,需要company_id有多个值,我在eption: Parameter ‘eProjCode’ not found. Available parameters are [arg0, param1, parms, param2])
报错日志: 报错日志    从上截图中可以看出,主要问题是没有找到对应的参数,我们先看看dao层的代码和mapper.xml中的代码: DAO层接口 mapper.xml中代码的展示
    可以看出,dao层传入了一个对象和一个map(之前参数是一个对象,后来由于需求的变更,需要company_id有多个值,我在后面加了一个map用来保存company_id的值),map的参数前面加了一个@Param的注解,同时在mapper.xml文件中foreach遍历获取参数也没有发生错误,同时问题又是eProjCode获取不到参数,这个eProjCode是所传入对象的一个属性,所以接下来我们就知道如何去解决问题了。最终正确代码如下:
dao修改之后的代码 mapper.xml修改之后的代码
    对,没错;解决方法就是在参数中给这个对象加入注解@Param,同时给定value值,告诉mapper.xml,在读取参数的时候去读取对应的值。

注意:导包的时候要注意,@Param所对应的包为:
import org.apache.ibatis.annotations.Param;

  • 4
    点赞
  • 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、付费专栏及课程。

余额充值