@Autowire默认模式

| Spring
@Autowire
bean:byName或byType如何?如果不可能,是否可以使用其他模式进行第二次试用?     
已邀请:
如果用“ 1”注释,它将注入具有匹配类型的Bean(如果一个类型中有多个,则抛出异常)。要指定名称,请使用“ 2”注释。     
弹簧0ѭ线的类型。按名称接线也可以使用
@Resource(name = \"id\")
    
@Autowired
的默认模式为
byType
。     
变量或setter方法上的
Autowired
注释等效于xml属性
autowire=\"byType\"
XML属性“ 9”默认为“ 10”
\"no\": 

The traditional Spring default. No automagical wiring. Bean references
must be defined in the XML file via the <ref/> element (or \"ref\"
attribute). We recommend this in most cases as it makes documentation
more explicit.
    
它们是no,byName,byType,构造函数和自动检测。默认模式为否,即默认情况下,在基于XML的传统配置中自动布线功能处于关闭状态。 使用@Autowired注释- 1)@Autowired属性: 在属性上使用@Autowired时,等效于在配置文件中按byType自动布线。 2)在属性设置器上@Autowired: 在设置器上使用@Autowired时,它也等效于在配置文件中按byType自动布线。 3)@Autowired在构造函数上: 在bean的构造函数上使用@Autowired时,它也等效于配置文件中构造函数的自动装配。 使用@Qualifier解决依赖关系中的冲突 如我们所知,如果我们在byType模式下使用自动装配,并且会在依赖项中查找属性类类型。如果找不到这样的类型,则会引发错误。但是,如果有两个或多个相同类类型的bean,该怎么办? 在这种情况下,spring将无法选择正确的bean来注入属性,因此您将需要使用限定符来帮助容器。 要使用限定符解析特定的bean,我们需要使用@Qualifier注释以及@Autowired注释,并将bean名称传递到注释参数中。     

要回复问题请先登录注册