Spring DI(依赖注入)

实体类Computer、MobilePhone、Student

public class Computer implements Serializable{
	private String mainboard;//主板
	private String hdd;//硬盘
	private String ram;//内存
	public String getMainboard() {
		return mainboard;
	}
	public void setMainboard(String mainboard) {
		this.mainboard = mainboard;
	}
	public String getHdd() {
		return hdd;
	}
	public void setHdd(String hdd) {
		this.hdd = hdd;
	}
	public String getRam() {
		return ram;
	}
	public void setRam(String ram) {
		this.ram = ram;
	}
}

public class MobilePhone implements Serializable{
	private String cpu;
	private String ram;
	public MobilePhone() {
		
	}
	public MobilePhone(String cpu, String ram) {
		this.cpu = cpu;
		this.ram = ram;
	}
	public String getCpu() {
		return cpu;
	}
	public void setCpu(String cpu) {
		this.cpu = cpu;
	}
	public String getRam() {
		return ram;
	}
	public void setRam(String ram) {
		this.ram = ram;
	}
}

/*
 * 自动装配:通过Spring自动装配机制,自动为一个
 * bean装配其关联的bean
 * 采用autowire="byType",即按照bean的类型进行自动装配
 */
public class Student implements Serializable{
	private Computer computer;
	private MobliePhone mobliePhone;
	public Computer getComputer() {
		return computer;
	}
	public void setComputer(Computer computer) {
		this.computer = computer;
	}
	public MobliePhone getMobliePhone() {
		return mobliePhone;
	}
	public void setMobliePhone(MobliePhone mobliePhone) {
		this.mobliePhone = mobliePhone;
	}
}

setter注入:
  通过调用无参构造器或无参static工厂方法实例化bean后,调用该bean的setter方法,为其注入参数 在这里插入图片描述
在这里插入图片描述
构造器注入:
  通过调用带参数的构造器来实现的,容器在bean被实例化的时候,根据参数类型执行相应的构造器,构造器注入可以强制给bean注入某些参数,比setter注入更严格. 在这里插入图片描述
  在这里插入图片描述

自动装配:
  Spring容器可以自动装配(autowire)相互协作bean之间的关联关系,autowire可以针对单个bean进行配置,autowire的方便在于减少xml的注入配置;自动装配虽然让开发变得更快速,但是要花更多时间进行维护,有事甚至不知道哪一个bean会被自动注入到另一个bean中.
在这里插入图片描述
  在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值