我在mapping-xml中有一个spring bean的以下映射。然后当我在我的一个junit-test类中尝试@Autowired“ClassParent”时,我得到异常为“org.springframework” .beans.factory.NoSuchBeanDefinitionException:没有定义类型为[org.springframework.batch.item.file.mapping.DefaultLineMapper]的唯一bean:期望的单个匹配bean但找到3“
<bean id="ClassParent"
class="org.springframework.batch.item.file.mapping.PatternMatchingCompositeLineMapper">
<property name="tokenizers">
<map>
<entry key="D*" value-ref="ClassC" />
<entry key="T*" value-ref="ClassD" />
</map>
</property>
<property name="fieldSetMappers">
<map>
<entry key="D*" value-ref="ClassA" />
<entry key="T*" value-ref="ClassB" />
</map>
</property>
</bean>
我如何自动装配豆“ClassParent”请帮帮我。
答案 0 :(得分:1)
它尝试找到注入的bean定义并找到三个bean。你必须使用资源注释指定name属性,并在名称attriburte中给出要注入该特定实例的bean的id
@Resouce(name="classparentId")
@Autowired