Spring的自动装配

  前边我们讲过了Spring配置文件中为bean实例进行属性注入的细节,即如何为基础数据类型(及其对应封装类型)、String类型、数组、集合(set/list/map/properties)、引用数据类型的属性进行属性注入。下边我们讲一讲Spring框架为配置文件专门设置的一个属性注入的功能:自动装配。

  Spring的IOC容器中可以自动的为bean的属性进行装配,只需要我们在bean节点设置autowira属性即可。

  自动装配有两种方式:

  autowire="byName",根据bean的id及类中的属性名是否一致进行装配,若bean的id和类的setXxx()中的xxx一致才可以自动装配,否则装配不上。

  autowire="byType",根据bean的class及类中的属性的类型是否一致进行装配,一致则自动装配,否则不会装配。需要注意的是,若是在配置文件中出现了多个相同的bean的class,那么Spring框架无法区分哪个更合适,所以也就无法自动将bean给其他bean的属性进行装配。

  为Bean进行自动装配具有明显的缺点,因为autowire属性时bean节点级别的,所以一个bean中的属性要么全部自动装配,要么都不进行自动装配,不够灵活;且自动装配的方式只能单独使用一种,无法交叉使用,也是不够灵活。所以我们在自己写的代码中当为bean的属性进行注入赋值时,基本不用自动装配的方式。自动装配的方式一般在引入一些其他的第三方框架时才会使用。

 

















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值