该文档解释了这个
对于后备匹配, bean名称被视为默认的限定符值。 因此,您可以使用id“
main”而不是嵌套的qualifier元素定义bean,从而得到相同的匹配结果。
但是,尽管您可以使用此约定按名称引用特定的bean,但从@Autowired根本上讲,它是带有可选语义限定符的类型驱动的注入。这意味着,即使带有Bean名称后退的限定符值,在类型匹配集中也始终具有狭窄的语义。他们没有在语义上表示对唯一bean
id的引用
因此,不,这不是错误,而是预期的行为。如果按类型自动装配找不到单个匹配的Bean,则将Bean ID(名称)用作备用。



