`

spring bean标签的属性配置

阅读更多
<beans>
Spring配置文件的根元素,包含一个或多个bean元素。

default-autowire属性:默认的bean自动装配模式。可选5种模式。

no:不使用自动装配。Bean的引用必须通过ref元素定义。

byName:通过属性名字进行自动装配。

byType:如果BeanFactory中正好有一个同属性类型一样的bean,就自动装配这个属性。如果有多于一个这样的bean,就抛出一个致命异常,它指出你可能不能对那个bean使用byType的自动装配。如果没有匹配的bean,则什么都不会发生,属性不会被设置。如果这是你不想要的情况(什么都不发生),通过设置dependency-check="objects"属性值来指定在这种情况下应该抛出错误。

constructor:这个同byType类似,不过是应用于构造函数的参数。如果在BeanFactory中不是恰好有一个bean与构造函数参数相同类型,则一个致命的错误会产生。

autodetect: 通过对bean 检查类的内部来选择constructor或byType。如果找到一个缺省的构造函数,那么就会应用byType。

default-dependency-check属性:默认的依赖检查模式。可选四种。

none :不进行依赖检查。没有指定值的bean属性仅仅是没有设值。

Simple:对基本类型和集合(除了合作者外,比如其他的bean,所有东西)进行依赖检查。

Object:对合作者进行依赖检查。

all :对合作者,基本类型和集合都进行依赖检查。

default-lazy-init属性:默认延迟加载。True 或False 。

用于告诉Spring容器一个类以及它是如何配置的。

class属性:Java Bean 类名。

id属性:Java Bean在BeanFactory中的唯一标识,代码中通过BeanFactory获取JavaBean实例时需以此作为索引名称。

name属性:同上,如果给bean增加别名,可以通过name属性指定一个或多个id。

singleton属性:指定此Java Bean是否采用单例(Singleton)模式,如果设为“true”,则在BeanFactory作用范围内,只维护此Java Bean的一个实例,代码通过BeanFactory获得此Java Bean实例的引用。反之,如果设为“false”,则通过BeanFactory获取此Java Bean实例时,BeanFactory每次都将创建一个新的实例返回。

abstract属性:设定ApplicationContext是否对bean进行预先的初始化。

parent属性:定义一个模板。

autowire属性:bean自动装配模式。可选5种模式。

no:不使用自动装配。Bean的引用必须通过ref元素定义。

byName:通过属性名字进行自动装配。

byType:如果BeanFactory中正好有一个同属性类型一样的bean,就自动装配这个属性。如果有多于一个这样的bean,就抛出一个致命异常,它指出你可能不能对那个bean使用byType的自动装配。如果没有匹配的bean,则什么都不会发生,属性不会被设置。如果这是你不想要的情况(什么都不发生),通过设置dependency-check="objects"属性值来指定在这种情况下应该抛出错误。

constructor:这个同byType类似,不过是应用于构造函数的参数。如果在BeanFactory中不是恰好有一个bean与构造函数参数相同类型,则一个致命的错误会产生。

autodetect: 通过对bean 检查类的内部来选择constructor或byType。如果找到一个缺省的构造函数,那么就会应用byType。

dependency-check属性:依赖检查模式。可选四种。

none :不进行依赖检查。没有指定值的bean属性仅仅是没有设值。

Simple:对基本类型和集合(除了合作者外,比如其他的bean,所有东西)进行依赖检查。

Object:对合作者进行依赖检查。

all :对合作者,基本类型和集合都进行依赖检查。

lazy-init属性:延迟加载。True 或False 。

init-method属性:初始化方法,此方法将在BeanFactory创建JavaBean实例之后,在向应用层返回引用之前执行。一般用于一些资源的初始化工作。

destroy-method属性:销毁方法。此方法将在BeanFactory销毁的时候执行,一般用于资源释放。

factory-bean属性:通过实例工厂方法创建bean,class属性必须为空,factory-bean属性必

须指定一个bean的名字,这个bean一定要在当前的bean工厂或者父bean工厂中,并包含工厂方法。而工厂方法本身通过factory-method属性设置。

factory-method属性:设定工厂类的工厂方法。

depends-on属性:Bean依赖关系。一般情况下无需设定。Spring会根据情况组织各个依赖关系的构建工作。只有某些特殊情况下,如JavaBean中的某些静态变量需要进行初始化(这是一种BadSmell,应该在设计上应该避免)。通过depends-on指定其依赖关系可保证在此Bean加载之前,首先对depends-on所指定的资源进行加载。


Spring 中Bean 配置说明

<property>
用于设置一个属性。
name属性:属性的名称。
value属性: 指定bean的属性值。BeanFactory将自动根据Java Bean对应的属性类型加以匹配。如果需要将属性值设定为null,必须使用<null/>节点。
ref属性: 指定了属性对BeanFactory中其他Bean的引用关系。

<value>
指定bean的属性值。

<ref>
指定了属性对BeanFactory中其他Bean的引用关系。
bean属性:指定了属性对BeanFactory中其他Bean的引用关系。
local属性:指定了属性对BeanFactory中其他Bean的引用关系。(仅在本地(同一个)xml文件里寻找bean。
parent属性:指定了属性对BeanFactory中其他Bean模板的引用关系。

<list>
指定bean的属性类型为List的属性值。

<map>
指定bean的属性类型为List的属性值。

<set>
指定bean的属性类型为List的属性值。

<props>
指定bean的属性类型为Properties的属性值。

<prop>
key属性:指定Properties的键

<idref>
用来设置属性值为容器中其他bean的id 或name。

<null>
指定一个空值。

<constructor-arg>
使用构造方法注入,指定构造方法的参数。
index属性:设置参数的序号。
ref属性:同ref
type属性:参数类型。
value属性:参数的值。

<lookup-method>
lookup方法注入
bean属性:要注入的bean名
name属性:要注入的方法名称

<replaced-method>
用来把已存在的方法实现替换为其他的实现。
name属性:要替换的方法名
replacer属性:替换者类, 实现org.springframework.beans.factory.support.MethodReplacer
接口)

<arg-type>
方法返回的类型
分享到:
评论

相关推荐

    spring bean XML配置入门

    在本文中,我们将深入探讨Spring框架中的Bean XML配置,这是Spring的核心特性之一,它允许我们定义、管理和装配应用中的对象。我们将围绕以下知识点展开: 1. **Spring框架基础**: Spring是一个开源的Java平台,...

    Spring IOC Bean标签属性介绍(教学视频+源代码)

    Spring IOC Bean标签属性介绍 0.Bean标签属性介绍 1.0 新建一个Maven工程 1.1 pom.xml 1.2 实体类JavaBean 1.2.1 User类 1.3 当Scope="singleton"时 1.4 当 Scope="singleton" 且 lazy-init="true" 时 1.5 当scope=...

    Spring的Bean配置

    1. **属性注入**:通过`&lt;property&gt;`标签设置Bean的属性值,如XML配置示例所示。 2. **构造器注入**:使用`&lt;constructor-arg&gt;`标签指定构造函数参数,或者在注解配置中使用`@Autowired`配合构造函数。 3. **setter...

    day38 11-Spring的Bean的属性的注入:对象属性

    在Spring框架中,Bean的属性注入是核心功能之一,它允许我们为Bean对象设置各种属性值,以便在应用运行时创建和配置完全初始化的对象。在本篇内容中,我们将深入探讨Spring如何处理Bean的属性注入,包括对象属性的...

    day38 12-Spring的Bean的属性的注入:名称空间p

    在Spring框架中,Bean的属性注入是核心功能之一,它允许我们通过配置文件或注解来设置Bean实例的属性值,使得对象的初始化更加灵活。本文将深入探讨Spring中的"名称空间p",这是一种用于配置Bean属性注入的方式,...

    Spring bean 管理

    在Spring中,Bean的管理包含多个方面:创建Bean实例、配置Bean属性、控制Bean的生命周期以及Bean作用域的定义。接下来将详细解释这些知识点。 1. Spring的工厂类: Spring通过工厂模式设计了一系列工厂类来创建对象...

    Spring Bean简单应用实例

    2. **依赖注入**:在Bean定义中,可以使用`&lt;property&gt;`标签(XML配置)或`@Autowired`注解(Java配置)来注入依赖。例如: ```xml &lt;bean id="myBean" class="com.example.MyClass"&gt; &lt;/bean&gt; ``` 或者: ```...

    day38 14-Spring的Bean的属性的注入:集合属性的注入

    在Spring框架中,Bean的属性注入是核心功能之一,它允许我们通过配置文件或注解来设置Bean的属性值,从而实现对象的依赖管理。在本主题“day38 14-Spring的Bean的属性的注入:集合属性的注入”中,我们将深入探讨...

    spring的bean加载顺序样例项目

    - Spring中的Bean是在`beans.xml`或Java配置类中通过`&lt;bean&gt;`标签定义的,每个Bean都有一个唯一的ID或名称。 - Bean的作用域包括单例(`singleton`)、原型(`prototype`)、请求(`request`)、会话(`session`)...

    Spring定义bean的三种方式和自动注入

    例如,对于`Student`和`Teacher`类,我们分别创建`bean`标签,并设置`id`属性作为Bean的唯一标识,`class`属性指定Bean对应的类。此外,通过`property`标签注入依赖,如`teacher`字段,使用`ref`属性引用另一个Bean...

    粗略实现spring创建bean

    - XML配置:传统的Spring配置方式,通过`&lt;bean&gt;`标签定义Bean的属性和依赖关系。 - 注解配置:使用如`@Component`、`@Service`、`@Repository`、`@Controller`等注解标记Bean,再通过`@Autowired`自动注入依赖。 ...

    Spring Bean生命周期&BeanDefinitions1

    根据`&lt;bean&gt;`标签中的`class`属性,Spring确定Bean的类型并进行实例化。 2. **属性注入**:接着,Spring会利用依赖注入(Dependency Injection,DI)填充Bean的所有属性。这可以通过构造器注入、setter注入或属性...

    spring中的bean

    1. **Bean的定义**:在XML配置中,我们可以使用`&lt;bean&gt;`标签来定义一个Bean,例如: ```xml &lt;bean id="myBean" class="com.example.MyClass"/&gt; ``` 这里的`id`属性是Bean的唯一标识,`class`属性指定Bean对应的Java...

    spring IOC反射装载bean

    `property`标签用于设置Bean的属性值,`ref`属性则引用了另一个Bean。 接下来,Spring使用Java的反射机制来实例化Bean。反射允许程序在运行时动态地获取类的信息(如类名、方法名等)并调用它们。在上述例子中,...

    spring自定义标签例子

    在Spring框架中,自定义标签是一项非常实用的功能,它允许我们创建符合XML语法的自定义元素,以便在配置文件中更方便地表达业务逻辑。在"spring自定义标签例子"这个项目中,我们可以深入理解这一特性,特别是通过...

    Spring Bean Lifecycle Control

    这可以通过`@Autowired`、`@Value`等注解实现,或者通过XML配置文件中的`&lt;property&gt;`标签来设置。 3. **容器回调**:在Bean完全初始化并准备好使用后,开发者可以通过实现`BeanPostProcessor`接口,提供自定义的回...

    spring3零配置注解实现Bean定义

    4. 为了启用自动扫描和注册Bean定义,需要在Spring配置文件中使用`&lt;context:component-scan&gt;`标签,并通过`base-package`属性来指定需要扫描的类路径位置。 5. 在配置文件中还可以通过`&lt;aop:aspectj-autoproxy/&gt;`...

    编码剖析Spring装配基本属性的原理

    在XML配置文件中,我们可以通过`&lt;bean&gt;`标签来定义一个对象,并使用属性来配置它。例如,我们可以设置`id`来唯一标识一个bean,`class`指定bean的实现类,`init-method`和`destroy-method`用于指定初始化和销毁方法...

    自定义 Schema 解析 Spring Bean

    本篇文章将聚焦于“自定义Schema解析Spring Bean”这一主题,这是一项高级功能,允许开发者扩展Spring的XML配置能力,以满足特定项目的需要。 自定义Schema解析是Spring框架提供的一个强大特性,它允许开发者创建...

    Spring In Action 继承Bean的配置

    在XML配置中,我们可以使用`&lt;bean&gt;`标签的`parent`属性来指定父Bean。例如: ```xml &lt;bean id="parentBean" class="com.example.ParentClass"&gt; &lt;/bean&gt; &lt;bean id="childBean" parent="parentBean" class=...

Global site tag (gtag.js) - Google Analytics