sparingIOC容器是spring的核心内容。作用是解决对象的创建问题以及处理对象的依赖关系
IOC容器 = 工厂类 + applicationContext.xml
1、对象的创建
1)调用无参数构造器
2)带参数构造器
3)工厂创建对象:
1、实例方法创建对象:
<bean id="factory" class="com.haha.xxFactory"></bean>
<bean id="user" factory-bean="factory" factory-method="getInstance"></bean>
2、静态方法创建对象:
<bean id="user" class="com.haha.xxFactory" factory-method="getInstance"></bean>
//User对象
public class User {
private int id;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "User [id=" + id + ", name=" + name + "]";
}
}
//工厂,创建对象
public class ObjectFactory {
//实例方法创建对象
public User getInstance(){
return new User(110,"工厂,调用实例方法");
}
//静态方法创建对象
public static User getStaticInstance(){
return new User(220,"工厂,调用静态方法");
}
public static void main(String[] args) {
//调用方法不同:
//1、调用静态构造方法,直接就能点出来
System.out.println(ObjectFactory.getStaticInstance());
//2、调用实例方法,必须先创建实例
ObjectFactory f = new ObjectFactory();
System.out.println(f.getInstance());
}
}
2、对象依赖关系:(spring中如何给对象的属性值赋值)DI:依赖注入
1)通过构造函数。
2)通过set方法给属性注入值(常用)
3)p命名空间
4)自动装配(了解)
5)注解