Spring自动注入

自动注入

(spring配置文件中对象名) == (ref=”id”中id名字) 就可以使用自动注解(不需要配置property)

1
2
3
4
5
//有两个类People和Teacher (People里面有Teacher的对象)
<bean id="teacher" class="com.bjsxt.test.Teacher"></bean>
<bean id="people" class="com.bjsxt.test.People" autowire="byName">
<!-- <property name="teacher" ref="teacher"></property> --> //以前都需要配置property
</bean>

解决方案

1. 在<bean>标签中通过 autowire=""配置 (只在本bean有效)
2. 在最大的<beans>标签中通过 default-autowire=""配置 (所有bean有效)

五大取值

1. default(默认): 根据全局default-autowire=""值 (默认全局和局部的在没有配置的时候都相当于no)
2. no: 不自动注入
3. byName: 通过名称自动注入 在Spring容器中找类的id
4. byType : 通过类型注入 
    4.1 不能有两个相同类型的bean!!!!!!
5. constructor : 根据构造方法注入
    5.1 提供对应参数的构造方法
    5.2 底层还是byName  构造方法参数名和其他bean的id相同

×

纯属好玩

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

文章目录
  1. 1. 自动注入
    1. 1.1. 解决方案
    2. 1.2. 五大取值
,