欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spring Ioc

程序员文章站 2022-05-23 10:33:53
...

1.Spring Ioc(反转控制),又称作DI(依赖注入),Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。IoC 容器控制了对象,由Ioc容器帮我们查找及注入依赖对象,对象只是被动的接受依赖对象

2.BeanFactory定义了 IOC 容器的最基本形式,并提供了 IOC 容器应遵守的的最基本的接口,也就是 Spring IOC 所遵守的最底层和最基本的编程规范。在 Spring 代码中, BeanFactory 只是个接口,并不是 IOC 容器的具体实现,但是 Spring 容器给出了很多种实现,如 DefaultListableBeanFactory 、 XmlBeanFactory 、 ApplicationContext 等,都是附加了某种功能的实现。
ApplicationContext是一个常用的IOC容器接口,它有一个常用的子实现类ClassPathXmlApplicationContext

3.Ioc的三种注入方式
ApplicationContext ioc = new ClassPathXmlApplicationContext(“applicationContext.xml”)
Programmer pro = (Programmer) ioc.getBean(“programmer”);

a.setter注入,又叫属性注入(最常用)
给实体添加setter方法,然后配置xml文件

  <bean id="programmer" class="com.spring.demo2.entity.Programmer">  
    <property name="name" value="小李"></property>  
    <property name="sex" value="男"></property>  
    <property name="computer" ref="computer"></property>  
  </bean>

b.构造器注入
首先定义一个有参构造器,然后配置xml文件,构造器里面没有name字段,只有value,是根据构造器的方法参数顺序来定义的

  <bean id="computer" class="com.spring.demo3.entity.Computer">  
    <constructor-arg value="联想"></constructor-arg>  
    <constructor-arg value="红色"></constructor-arg>  
    <constructor-arg value="15.6寸"></constructor-arg>  
  </bean>

c.接口注入
接口注入模式因为具备侵入性,它要求组件必须与特定的接口相关联,实际使用有限

相关标签: IOC