IOC

IOC

  • IOC的本质,对象交给Spring创建,管理和装配

spring创建对象和new创建对象的联系

<bean id="user" class="com.wenmrong.pojo.User">
        <property name="name" value="spring">
        </property>
</bean>
  • 普通属性用value赋值
  • 对象则用ref赋值

public class User {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}
  • User user = new User 中 user相当于bean中的id,class为类型
  • property相当于set方法传参数给对象赋值

spring获取对象的方式

ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
User hello = (User) context.getBean("user");
  • 通过xml配置文件获取spring容器
  • 通过spring容器来获取对象

spring创建对象的方式

  • 无参构造器创建对象

  • 通过有参构造器创建对象

  • <constructor-arg value="helloSpring"/>
    
  • 通过有参构造器,并可以指定参数的名字和类型来创建对象

  • <constructor-arg name="name" type="java.lang.String" value="7500000"/>
    

细节

  • Spring的容器是ApplicationContext类型
  • 对象在容器创建的时候已经初始化
原文地址:https://www.cnblogs.com/AutoW/p/12829930.html