Spring注入Bean时不匹配构造器错误 —— Unsatisfied dependency expressed through constructor parameter

本文探讨了在Spring框架中遇到的构造器注入错误,具体表现为未找到匹配的Bean构造器参数。问题源于在User实体类中,使用了带name和pwd的构造器,但尝试进行构造器注入时需要的是带id和pwd的构造器。解决办法是确保注入时提供的参数与实体类的构造器匹配,即提供与期望构造器相匹配的参数,以使Spring容器能正确地创建Bean。

报错信息

Unsatisfied dependency expressed through constructor parameter 0: Ambiguous argument values for parameter of type [java.lang.String] - did you specify the correct bean references as arguments?

翻译一波~

通过构造函数参数0表示的未满足的依赖关系:类型为[java.lang.String]的参数的参数值不明确-是否将正确的bean引用指定为参数?

事故现场(并非原事故现场,于本人私下还原)

spring的核心配置文件 applicationContext.xml
在这里插入图片描述

我使用构造器和属性赋值方式注入 结果GG…

问题在于 注入Bean的时候 匹配构造器 错误

我的User实体类中 有一个无参构造器 ,一个带两个参数的构造器,还有一个三个参数的构造器

问题探究

我上面的代码中使用了构造器注入 但是我却没有定义一个带id和pwd的构造器!!!
只有一个带name 和pwd 的构造器 ,于是乎!
在这里插入图片描述

这样子 spring容器才能匹配到我们的构造器!!!

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值