【发布时间】:2019-11-27 14:35:06
【问题描述】:
我的 Dao 和 DaoImpl 类如下:
public interface MyDao{
}
@Service(value = "MyDao")
public class MyDaoImpl implements MyDao{
}
我需要将 MyDaoImpl 注入到 Driver.java 类中的变量 myDao
public class Driver{
MyDao myDao;
public MyDao getMyDao() {
return myDao;
}
public void setMyDao(MyDao myDao) {
this.myDao = myDao;
}
}
现在的问题是我正在使用类似这样的 XML 创建 bean:
<bean id="driver123" class="com.Driver">
</bean>
如何使用 XML 在此 bean 中注入 MyDaoImpl 对象(通过 Annotation 创建)? 如果 MyDaoImpl 是通过 XML 创建的,我可以使用属性和 ref config。
但是我该怎么做呢?
【问题讨论】:
-
我可以使用属性和 ref config 你仍然可以这样做。 bean 的名称是
ApiInboundManager。 -
@SotiriosDelimanolis 你能提供一些代码吗?
-
只要您的 XML 或注释配置以一种或另一种方式导入,
<property name="myDao" ref="ApiInboundManager" /> -
你可以试试这个。
<bean id="driver123" class="com.Driver"> <property name="myDao" ref="MyDao"></property> </bean> -
试过了。我在尝试获取 cfg.getApplicationContext().getBean(beanId) 行中的 bean 时遇到异常原因:org.springframework.beans.factory.NoSuchBeanDefinitionException:没有名为“MyDao”的 bean 可用
标签: java xml spring annotations