我收到这个错误
org.springframework.beans.factory.BeanCreationException:
Could not autowire method:
这是我的spring的xml配置。
<bean ...>
...
<property name="InfoModel" ref="InfoModel"></property>
</bean>
这是我在 Java 类中 Autowiring 它的代码
private InfoModel infoModel;
@Autowired
public void setInfoModel(InfoModel infoModel) {
this.infoModel= infoModel;
}
我是不是漏掉了什么。我怀疑我应该制作 InfoModel 的 Interface
以使其 Autowiring ?
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [com.model.InfoModel] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:920)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:789)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:703)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:547)
最佳答案
如果您使用@Autowired
,则无需在 xml 中将其标记为属性。只需将 InfoModel 声明为 XML 中的 bean 并从 xml 中删除 property
为你注入(inject) InfoModel
总结
1 您需要在 XML 中为 InfoModel
2 您需要从 XML 中删除 property
3 确保您已通过添加
来驱动上下文注释<context:annotation-config />
关于java - 无法 Autowiring 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8635861/