IOC 容器三种注入方式

来源:互联网 发布:cmd 关闭80端口 编辑:程序博客网 时间:2024/05/21 09:07
三种注入:
1.接口注入:
将所有的客户类(组件)注入方法抽取到一个接口,每个客户类都要实现这一接口。
public interface InjectTion{//通用注入接口void injectA(Object obj); //其中obj的值通过容器设置}public class Component implements interface{priavte Dog dog;public void inject(Dog dog){//实现注入方法this.dog = dog;}public doSomething(){dog.speek();}}


由于注入接口参数由容器配置,若脱离该容器那么组件则无法复用。
2.setter注入:
通过setter方法注入依赖对象。
public class Component{priavte Dog dog;public Dog setDog(Dog dog){this.dog = dog;}public doSomething(){dog.speek();}}


<bean id="component" class="Component" ><property id="dog" ...></property></bean>


3.构造器注入:
通过构造方法注入依赖对象。
public class Component{priavte Dog dog;public Component(Dog dog){this.dog = dog;}public doSomething(){dog.speek();}}


<bean id="component" class="Component" > <constructor-arg name="dog" ...></constructor-arg></bean>



spring中没有接口注入,故我们平时说spring有三种注入方式其实是不严谨的。
原创粉丝点击