为了账号安全,请及时绑定邮箱和手机立即绑定

Spring、Bean、构造函数参数作为字符串

Spring、Bean、构造函数参数作为字符串

郎朗坤 2024-01-28 15:58:05
我收到一个异常:没有找到依赖项 [java.lang.String] 的合格 bean:预计至少有 1 个符合自动装配候选资格的 bean。在 beans.xml 中<bean id = "database" class = "com.price.compare.service.DAO" scope="singleton">    <constructor-arg index="0" type = "java.lang.String" value="localhost"/>    <constructor-arg index="1" type = "java.lang.String" value="5432"/></bean>DAO.java    @Component    public class DAO {        private final String host;        private final String port;        public DAO(String host, String port) {            this.host = host;            this.port = port;        }        @PostConstruct        public void init() {            // custom initialization logic        }    }
查看完整描述

1 回答

?
杨魅力

TA贡献1811条经验 获得超6个赞

您已定义该 bean 两次;在 XML 配置中作为一个@Componentbean。

通过使用@Component注释,可以在组件扫描期间拾取 bean。但由于组件扫描时所需的字符串参数不明确,因此抛出异常。

从您的 bean 中删除@Component注释,让您的 XML 配置 bean 成为唯一的DAObean。


查看完整回答
反对 回复 2024-01-28
  • 1 回答
  • 0 关注
  • 85 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信