IOC 容器三种注入方式

本文介绍了Spring中三种常见的依赖注入方式:setter注入、构造器注入和接口注入。setter注入通过setter方法设置依赖对象;构造器注入利用构造方法进行注入;接口注入虽然不常用,但提供了一种通用注入接口的思路。然而,Spring本身并不直接支持接口注入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

三种注入:
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有三种注入方式其实是不严谨的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值