@Autowired
1、@Autowired默认是按照类型装配,默认情况下它要求依赖对象必须存在值,如果允许为null,可以设置它 required
属性为 false。
另外:在代码中有时 @Autowired 会有下划线标注,这不是错误,这是正确的,具体为什么我也不知道,也许是IDEA 的一种警告提示。
属性:required ,是一个boolean类型的,默认true
(1)required = true
: 表示引用类型赋值失败,程序报错,并终止执行(建议使用,有错误可以报错);
(2)required = false
:引用类型如果赋值失败,程序正常执行 ,引用类型是 null
。
演示@Autowired的使用:
2、如果我们想使用按照名称装配,可以结合@Qualifier注解一起使用,比如说一个接口有多个实现类。
@Qualifier
按照名字(id)装配。@Autowired、@Qualifier两者在代码中的位置可以互换。