bean的自动装配属性能简化xml文件配置.

bean 的自动装配属性分为四种:

1.byName

2.byTyoe

3.constructor

4. autodetect

byName:

它查找配置文件中的的bean的id 或者name 和本bean中的成员属性名相同的bean 自动装配 所以不用再给本bean添加peoperty标签

例:有两个类

public Class  Person{

}

public Class Customer{

  private Person p;

  public setPerson(Person ps){

    this.p=ps;

  }

}

传统的xml配置为

<bean id="p" class="com.***.Person "/ >

<bean id="customer" class="com.***.Customer" >

<property name="p" ref="p"></property>   //将(ref)p实例化到bean的(name)p属性,达到方法中setPerson的目的

</bean>

byName的自动装配方法为

<bean id="p" class="com.***.Person "/ >

<bean id="customer" class="com.***.Customer"  autowrite="byName"/> //因为id=p的类的实例化名正好和com.***.Customer类的属性 P的成员变量名相同 所以被自动装配到 customer这个bean里面

byType:

方法同上:只不过他搜索的是成员的类型和配置文件中的某个bean的类型相同 则自动装配 ,但是要注意一点:如果出现多个相同类型的bean将抛出异常,处理方法为。设置不需要载入的bean 的属性 primary="false"(取消首选) 或 autowriter-candidate="false"(排除)

constructor:
试图在容器中寻找与需要自动装配的bean的构造函数参数一致的一个或多个bean,如果没找到则抛出异常

autodetect:
首先尝试使用constructor来自动装配,然后再使用byType方式。

默认自动装配设置 :

如果想要为它所创建的所有bean应用相同的自动装配策略来简化配置是 可以在根元素<beans> 上增加 default-autowire属性

<beans default-autowire="byName"> ...................</beans>

Spring bean的自动装配属性的更多相关文章

  1. spring bean autowire自动装配

    转自:http://blog.csdn.net/xiao_jun_0820/article/details/7233139 autowire="byName"会自动装配属性与Bea ...

  2. Spring基础——在 Spring Config 文件中基于 XML 的 Bean 的自动装配

    一.Spring IOC 容器支持自动装配 Bean,所谓自动装配是指,不需要通过 <property> 或 <constructor-arg> 为 Bean 的属性注入值的过 ...

  3. spring实战二之Bean的自动装配(非注解方式)

    Bean的自动装配 自动装配(autowiring)有助于减少甚至消除配置<property>元素和<constructor-arg>元素,让Spring自动识别如何装配Bea ...

  4. Spring基础09——Bean的自动装配

    1.XML配置的Bean自动装配 SpringIOC容器可以自动装配Bean,需要做的仅仅是在<bean>的autowire属性里指定自动装配的模式,而不需要手工去指定要装配的Bean,a ...

  5. Spring(三):bean的自动装配

    Bean的自动装配 自动装配是Spring满足bean依赖的一种方式. Spring会在上下文中自动寻找,并自动给bean装配属性 Spring中三种装配方式 在xml中显式的配置. 在java中显式 ...

  6. Spring学习03(Bean的自动装配)

    6.Bean的自动装配 6.1 自动装配说明 自动装配是使用spring满足bean依赖的一种方法 spring会在应用上下文中为某个bean寻找其依赖的bean. Spring中bean的三种装配机 ...

  7. bean的自动装配,使用注解开发,使用java的方式配置Spring

    bean的自动装配 自动装配是Spring满足bean依赖一种方式! Spring会在上下文中自动寻找,并自动给bean装配属性! 在Spring中有三种装配的方式 在xml中显示的配置 在java中 ...

  8. Spring(六)之自动装配

    一.自动装配模型 下面是自动连接模式,可以用来指示Spring容器使用自动连接进行依赖注入.您可以使用元素的autowire属性为bean定义指定autowire模式. 可以使用 byType 或者  ...

  9. Spring 由构造函数自动装配

    Spring 由构造函数自动装配,这种模式与 byType 非常相似,但它应用于构造器参数. Spring 容器看作 beans,在 XML 配置文件中 beans 的 autowire 属性设置为 ...

随机推荐

  1. 【Java】 Java常用的几个设计模式实例

    一.单例模式 public class SingletonDemo { public static void main(String[] args) { // } } class User1{//饿汉 ...

  2. Laravel - 验证码(captcha)

    首先,登录网址 packagist.org 查找 laravel captcha,找到mews/captcha ,根据 packagist 上的使用方法一步步来实现验证码的安装.配置composer. ...

  3. mongoose 开源http库

    Mongoose是一个用C编写的网络库.它为客户端和服务器模式实现TCP,UDP,HTTP,WebSocket,CoAP,MQTT的事件驱动的非阻塞API. 设计理念: Mongoose有三个基本的数 ...

  4. C#其他知识

    .NET理解为一个运行库环境和一个全面的基础类库. .NET三个关键实体(构造块):CLR. CTS. CLS 公共语言运行库层为CLR .功能:定位加载和管理.NET类型.也负责底层的工作如内存管理 ...

  5. 移动端布局基础viewport

    划重点 手机屏幕相对着桌面浏览器小,传统网页的设计在手机上体验糟糕 Apple 在移动版 Safari 中定义了 viewport meta 标签(如果没记错最早提出的话),用于创建一个虚拟窗口(la ...

  6. php 的windows集成开发环境

    1.安装视频  https://www.bilibili.com/video/av10274152/?p=5 2.所需的安装包: https://pan.baidu.com/s/1GLnuzkKFIT ...

  7. oracle基本语句(第七章、数据库逻辑对象管理)

    索引.实体化视图.簇.散列簇.序列.同义词 1.创建表 CREATE TABLE <表名>(<列名1> <数据类型>,……); CREATE GLOBAL TEMP ...

  8. 【NOIP2016提高A组模拟9.24】总结

    第一题纯模拟,结果那个出题人脑子似乎进水了,空间限制开了1G!!! 导致我捉摸了半天为什么空间要开那么大,最后只能得出上面的结论. 第二题是个矩阵快速幂,比赛上我没把递推式求出来,但是根据各种乱搞,得 ...

  9. UI编辑

    UI编辑 基本部件介绍 (1)Layout(布局) (2)Space(空间) (3)Button (4)ItemView (5)ItemWidget Widget继承自View,即ListWidget ...

  10. ELK结合logback

    之前ELK的安装可以查看前面一篇博客 下面是我的logback的配置文件,通过logback的appender直接导入logstash <?xml version="1.0" ...