本节主要包括以下内容:
1. @Inject注解通过属性域注入
2. @Inject注解通过set方法或则其他方法注入
3. @Inject注解通过构造器方法注入
4. @Named注解
我研究了一下,发现了@Inject注解和@autowired注解几乎是一样的,只有一个不同点,使用上一模一样。所以我就不做例子了,可以直接参考@autowired 的使用。
下面列出一下Spring注解和Java原生注解的区别:
(1)@Autowire 和 @Inject
相同点:
同样可以注入对象,在属性域上面注入、在set方法或者其他需要注入的方法上面注入、在构造器上面注入
不同点:
@Autowire 有@required标签,允许对象为空
@Inject没有@required标签,强制要求对象不能为空
(2)@Qualifier @Named
相同点:
都是作为限定器来使用,都可以使用标签或者bean的id来限定。