zoukankan      html  css  js  c++  java
  • Spring中自己主动装配

    自己主动装配

    在我们了解过constructor-arg和property装配中。都须要配置对应的属性和值或者引用,假设在比較复杂的项目中。就会使得XML的配置变得复杂,自己主动装配能够使用较少的配置实现。

    主要通过使用bean的autowire属性来控制,autowire可取值:

    byName:为属性自己主动装配id与该属性的名字同样的bean  

               比如:People中有一个名为dog的Dog类

                <beanclass=”People” id=”p” autowire=”byName”/>

                <beanid=”dog” class=”Dog”>

    byType:与byName不同的是,通过类型来选择装配的属性

               <beanclass=”People” id=”p” autowire=”byType”/>

               < beanid=”dog1” class=”Dog”>

       假设我们有多个Dog bean那么此时byType就不会装配。而是抛出异常,对于此。我们能够设置首先装配的bean。通过将Dog bean的primary属性设置为false(默觉得true,都是首选bean),还能够设置autowrie-candidate为false,将该bean排除在装配外。

             constructor:通过构造器装配,此时就不再须要constructor-arg装配,当我们装配一个bean时,选用constructor。那么该bean就会去寻找该构造方法中能够使用的參数,假设此时有多个的话。那么就会抛出异常。

    注意:此时不能使用constructor-arg

            autodetect:自己主动装配。首先会选用constructor。假设没有。在选用byType.

     

     

    假设我们须要为全部的bean选择同样的默认装配方式,能够再beans元素中,使用default-autowire属性来指定

    我们通常使用手动装配和自己主动装配的混合模式。

  • 相关阅读:
    Server 对象
    Response 对象
    bzoj 5252: [2018多省省队联测]林克卡特树
    bzoj 2167: 公交车站
    bzoj 5315: [Jsoi2018]防御网络
    bzoj 5319: [Jsoi2018]军训列队
    bzoj 4161: Shlw loves matrixI
    bzoj 4942: [Noi2017]整数
    bzoj 2648: SJY摆棋子
    kd-tree 小结
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5215093.html
Copyright © 2011-2022 走看看