解决org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter ‘password’ not found. Available parameters are [arg1, id, param1, param2]

如果你不相信努力和时光,那么成果就会是第一个选择辜负你的。不要去否定你自己的过去,也不要用你的过去牵扯你现在的努力和对未来的展望。不是因为拥有希望你才去努力,而是去努力了,你才有可能看到希望的光芒。解决org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter ‘password’ not found. Available parameters are [arg1, id, param1, param2],希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

解决org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'password' not found. Available parameters are [arg1, id, param1, param2]

异常出现原因:

mapper.xml映射没有得到传入的参数,这个时候需要在DAO变化传参。
在使用mybatis开发的时候,有时候需要传入多个参数进行查询,当传入多个参数时,不处理便会出现上面的异常报错,这时需要用到一个注解 @Param

用注解来简化xml配置的时候,@Param注解的作用是给参数命名,参数命名后就能根据名字得到参数值,正确的将参数传入sql语句中。简单说就是@Param(“orId2”) String orId1 在启动时生成一个orId2的属性,把参数orId1的值赋给orId2,这样就可以在申请了中使用#{orId2} 或者${orId2}获取变量,如果不配置@Param(“orId2”),就不会有orId2属性,只能用默认的#{orId1}来取值。

代码传参方式:

错误

int updatePassword(int id, String password);

正确:

int updatePassword(@Param("id") int id, @Param("password") String password);

注:属性名称和xml映射文件的名称相同 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/195233.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!