一般大家都说主要有三种分别是属性注入、setter方法注入和构造器注入。
查阅了一些资料其实也可分为三个大类是接口注入、Set注入和构造器注入,常说的其他的方法是比如说注解的方式注入、自动注入是属于构造器注入,而工厂的方式和p命名的方式是属于Set注入。
(1)接口注入:其实现在很少用到,原理是在一个接口中定义要注入的信息,通过接口完成注入。总所周知接口相当于是一个比较特殊的类,接口里只能有抽象方法和常量。
然后利用反射的其中一种方式 接口名.class返回一个接口的实例对象并注入给属性。否则再实现接口就会违背使用Spring框架的初衷。
(2)Set注入:在接受注入的类中定义一个set方法,并在参数中定义需要注入的元素。
(3)构造器注入:在接受注入的类中定义一个构造方法,并在参数中定义需要注入的元素。
可以通过名称name、通过类型type、通过索引index,通过名称name最常用。