spring入门(8) 装配Bean之自动装配

Spring_Autowiring collaborators

在Spring3.2.2中自动装配类型,分别为:no(default)(不采用自动装配)、 byName,byType,constructor下面来分别介绍一下这些是如何自动装配的

<bean id="foo" class="...Foo" autowire="autowire type">

Mode            Explanation

no: (Default) No autowiring. Bean references must be defined via a ref element.

Changing the default setting is not recommended for larger deployments,

because specifying collaborators explicitly gives greater control and clarity.

To some extent, it documents the structure of a system.

byName:Autowiring by property name.

Spring looks for a bean with the same name as the property that needs to be autowired.

For example, if a bean definition is set to autowire by name,

and it contains a master property (that is, it has a setMaster(..) method),

Spring looks for a bean definition named master, and uses it to set the property.

byType:Allows a property to be autowired if exactly one bean of the property type exists in the container.

If more than one exists, a fatal exception is thrown,

which indicates that you may not use byType autowiring for that bean.

If there are no matching beans, nothing happens; the property is not set.

constructor:Analogous to byType, but applies to constructor arguments.

If there is not exactly one bean of the constructor argument type in the container, a fatal error is raised

案例分析:

 1、创建CumputerBean类

package www.csdn.spring.autowire.bean;  

public class CumputerBean {  

// 电脑名称   

private String name;  

public void setName(String name) {  

this.name = name;  

}  

}
package www.csdn.spring.autowire.bean;  

public class CumputerBean {  

// 电脑名称  

private String name;  

public void setName(String name) {  

this.name = name;  

}  

}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索bean
, autowired
, 自动
, name
, constructor
, property
, spring container
, @Autowired
The
spring bean自动装配、spring装配bean、spring bean 入门、bean自动装配、bean的自动装配,以便于您获取更多的相关知识。

时间: 2024-09-19 09:00:37

spring入门(8) 装配Bean之自动装配的相关文章

《Spring攻略(第2版)》——1.11 用XML配置自动装配Bean

1.11 用XML配置自动装配Bean 1.11.1 问题 当一个Bean需要访问另一个Bean时,你可以显式指定引用装配它.但是,如果你的容器能够自动装配Bean,就可以免去手工配置装配的麻烦. 1.11.2 解决方案 Spring IoC容器能够帮助你自动装配Bean.你只要在的autowire属性中指定自动装配模式就可以了.表1-2列出了Spring支持的自动装配模式. *默认模式是no,但是可以设置根元素的default-autowire属性修改.这个默认模式将被Bean自己指定的模式覆

《Spring实战(第4版)》——2.4 通过XML装配bean

2.4 通过XML装配bean 到此为止,我们已经看到了如何让Spring自动发现和装配bean,还看到了如何进行手动干预,即通过JavaConfig显式地装配bean.但是,在装配bean的时候,还有一种可选方案,尽管这种方案可能不太合乎大家的心意,但是它在Spring中已经有很长的历史了. 在Spring刚刚出现的时候,XML是描述配置的主要方式.在Spring的名义下,我们创建了无数行XML代码.在一定程度上,Spring成为了XML配置的同义词. 尽管Spring长期以来确实与XML有着

Spring实战2:装配bean—依赖注入的本质

主要内容 Spring的配置方法概览 自动装配bean 基于Java配置文件装配bean 控制bean的创建和销毁 任何一个成功的应用都是由多个为了实现某个业务目标而相互协作的组件构成的,这些组件必须相互了解.能够相互协作完成工作.例如,在一个在线购物系统中,订单管理组件需要与产品管理组件以及信用卡认证组件协作:这些组件还需要跟数据库组件协作从而进行数据库读写操作. 在Spring应用中,对象无需自己负责查找或者创建与其关联的其他对象,由容器负责将创建各个对象,并创建各个对象之间的依赖关系.例如

《Spring实战(第4版)》——2.2 自动化装配bean

2.2 自动化装配bean 在本章稍后的内容中,你会看到如何借助Java和XML来进行Spring装配.尽管你会发现这些显式装配技术非常有用,但是在便利性方面,最强大的还是Spring的自动化配置.如果Spring能够进行自动化装配的话,那何苦还要显式地将这些bean装配在一起呢? Spring从两个角度来实现自动化装配: 组件扫描(component scanning):Spring会自动发现应用上下文中所创建的bean.自动装配(autowiring):Spring自动满足bean之间的依赖

Spring Autowire自动装配

在应用中,我们常常使用<ref>标签为JavaBean注入它依赖的对象.但是对于一个大型的系统,这个操作将会耗费我们大量的资源,我们不得不花费大量的时间和精力用于创建和维护系统中的<ref>标签.实际上,这种方式也会在另一种形式上增加了应用程序的复杂性,那么如何解决这个问题呢?Spring为我们提供了一个自动装配的机制,尽管这种机制不是很完善,但是在应用中结合<ref>标签还是可以大大的减少我们的劳动强度.前面提到过,在定义Bean时,<bean>标签有一个

Spring 自动装配

Bean的自动装配(Autowiring) 四种类型: 1.No:不做任何操作 2.byname:根据属性名自动装配.此选项将检查容器并根据名字查找与属性完全一致的bean,并将其与属性自动装配 3.byType:如果容器中存在一个与指定属性类型相同的bean,那么将与该属性自动装配:如果存在多个该类型的bean,那么抛出异常,并指出不能使用byType方式进行自动装配:如果没有找到相匹配的bean,则什么事都不发生 4.Constructor:与byType方式类似,不同之处在于它应用于构造器

装配Bean

1.创建Spring配置 在XML文件中声明Bean时,spring配置文件的根元素来源于Spring beans命名空 间所定义的<beans>元素.以下为一个典型的Spring XML配置文件: [html] view plain copy  print? <span style="color:#009900;"><?xml version="1.0" encoding="utf-8"?>   <be

《Spring攻略(第2版)》——1.12 用@Autowired和@Resource自动装配Bean

1.12 用@Autowired和@Resource自动装配Bean 1.12.1 问题 在Bean配置文件中设置autowire属性进行的自动装配将装配一个Bean的所有属性.这样的灵活性不足以仅仅装配特定的属性.而且,你只能通过类型或者名称自动装配Bean.如果这两种策略都不能满足你的需求,就必须明确地装配Bean. 1.12.2 解决方案 从Spring 2.5起,自动装配功能进行了多处改进.你可以通过用@Autowired或者@Resource(在JSR-250:Java平台常见注解中定

spring入门(7) 装配Bean中构造参数的注入

spring装配bean中还有一种Set注入的替代,那就是构造参数的注入. set注入是一种直接方式,缺点是它假设了 所 有的可变属性都可以通过set方法访问到.例如有些属性在创建时设置一次,以后不再改变.替代方式是通过构造函数设 置一些属性值.还有它无法清晰表达哪些属性是必须的,哪些是可选的,构造注入的优势是通过构造强制依赖关系,不可能 实例化不完全的或无法使用的bean.下面是构造器的几种注入方式: 1.通过构造函数注入 (原始方式) 2.根 据构造器参数的类型 3.根据索引index注入