Autowire一个在Spring中扩展集合的类

时间:2016-09-26 08:01:10

标签: java spring annotations spring-annotations

我有一个扩展集合的类,特别是HashMap。我想将它用作另一个类中的自动装配字段,但是当我尝试以下列方式使用@autowired或@resource注释时:

{{1}}

我收到错误:没有[my collection class]类型的限定bean

我怎样才能自动上课?

(我不能在项目中使用xml)

2 个答案:

答案 0 :(得分:1)

最简单的解决方案是使用@Resource指定bean id

@Resource(name="myCollection")
private MyCollectionClass<String, Object> myCollectionClass;

或者您可以将@Qualifier与@Autowired

结合使用
@Autowired @Qualifier("myCollection")
private MyCollectionClass<String, Object> myCollectionClass;

答案 1 :(得分:0)

您是否注释了myCollectionClass

如果没有,您需要使用myCollectionClass注释@Component以获取spring容器,以根据类名或类类型限定对象。

您还可以使用@Qualifier并指定限定符类名称。