1.id

bean的唯一标识,

2.class

类的完全限定名,

3.parent

父类bean定义的名字。

如果没有任何声明,会使用父bean,但是也可以重写父类。重写父类时,子bean 必须与父bean 兼容,也就是说,

接受父类的属性值和构造器声明的值。

子bean会继承父bean的构造器声明的值,属性值,并且重写父bean的方法。如果init方法,destroy方法已声明,

他们会覆盖父bean相应的设置。

  保留的设置会直接从子bean获取,包括depends on,autowire mode,scope,lazy init.

4.abstract

声明bean是否是抽象的,决定该类是否会实例化。默认是false。

注意:abstract属性不会被子bean继承,所以,abstract为true时需要对每个bean显示声明。

5.lazy-init

决定是否延迟实例化,如果为false,则启动时会立即实例化单例模式的bean.默认是false。

注意:lazy-init属性不会被子bean继承。

6.autowire

决定是否自动装配bean的属性。

autowire有4中模式:

  • "no"

    Spring默认的模式。bean的引用必须在XML文件中通过<ref/>元素或ref属性显示定义。

    spring推荐使用的模式,这样可以使文档更清晰明确。

  • "byName"

    通过属性名使用自动装配。如果一个Cat类拥有一个dog属性,那么Spring会根据名字dog

    去寻找bean,如果没有找到bean,则不会自动装配。

  • "byType"

    如果Spring容器只有该属性类型的一个bean,会自动装配。当有多个该属性类型的bean时

    会报错。如果没有,则不会自动装配。

  • "constructor"

    针对构造器引用,和byType类似。

注意:autowire属性不会被子bean继承。

7.depends-on

该bean初始化时依赖的其他bean的名字,bean工厂确保其他bean在该bean之前完成初始化。

注意:依赖项一般通过bean属性或构造器声明,这个属性对其他依赖(如静态类或启动阶段数据库的准备)是必要的。

注意:depends-on属性不会被子bean继承。

8.scope

scope属性值有四种: singleton,prototype,request,session

singleton:单例模式,默认选项

prototype:非单例模式

request:对于web应用,每一个请求产生一个新的实例

session:对于web应用,一个session产生一个实例

本人水平有限,如果有误,还请指正。

还有几个选项,需要请自行查看文档。

9.autowire-candidate

10.primary

11.init-method

12.destroy-method

13.factory-method

14.factory-bean

Spring <bean> 参数意义的更多相关文章

  1. Spring(3)——装配 Spring Bean 详解

    装配 Bean 的概述 前面已经介绍了 Spring IoC 的理念和设计,这一篇文章将介绍的是如何将自己开发的 Bean 装配到 Spring IoC 容器中. 大部分场景下,我们都会使用 Appl ...

  2. spring bean自动注入

    使用 @Repository.@Service.@Controller 和 @Component 将类标识为 Bean Spring 自 2.0 版本开始,陆续引入了一些注解用于简化 Spring 的 ...

  3. Spring Bean装配详解(五)

    装配 Bean 的概述 前面已经介绍了 Spring IoC 的理念和设计,这一篇文章将介绍的是如何将自己开发的 Bean 装配到 Spring IoC 容器中. 大部分场景下,我们都会使用 Appl ...

  4. 想减少代码量,快设置一个有感知的 Aware Spring Bean

    摘要:正常情况下,Spring 中的 Bean 对 Spring 是无感知的,Spring 框架提供了这种扩展能力,能让一个 bean 成为有感知的. 本文分享自华为云社区<有感知的 Aware ...

  5. Spring8:一些常用的Spring Bean扩展接口

    前言 Spring是一款非常强大的框架,可以说是几乎所有的企业级Java项目使用了Spring,而Bean又是Spring框架的核心. Spring框架运用了非常多的设计模式,从整体上看,它的设计严格 ...

  6. Spring Bean详细讲解

    什么是Bean? Spring Bean是被实例的,组装的及被Spring 容器管理的Java对象. Spring 容器会自动完成@bean对象的实例化. 创建应用对象之间的协作关系的行为称为:装配( ...

  7. Spring Bean的生命周期(非常详细)

    Spring作为当前Java最流行.最强大的轻量级框架,受到了程序员的热烈欢迎.准确的了解Spring Bean的生命周期是非常必要的.我们通常使用ApplicationContext作为Spring ...

  8. 【转】Spring bean处理——回调函数

    Spring bean处理——回调函数 Spring中定义了三个可以用来对Spring bean或生成bean的BeanFactory进行处理的接口,InitializingBean.BeanPost ...

  9. spring mvc参数绑定

    spring绑定参数的过程 从客户端请求key/value数据,经过参数绑定,将key/value数据绑定到controller方法的形参上.springmvc中,接收页面提交的数据是通过方法形参来接 ...

随机推荐

  1. C/C++面试

    1. RTTL 运行时类别识别,在只有一个指向基类的指针或引用时确定一个对象的准确类型. 2.什么是拷贝构造函数 是单个形参的构造函数,实参是与该类同属一类的对象:在类定义中,如果未提供自己的拷贝构造 ...

  2. maven基础学习

    项目结构 src      -main           -java                -package      -test           -java               ...

  3. Linux Shell编程基础

    在学习Linux BASH Shell编程的过程中,发现由于不经常用,所以很多东西很容易忘记,所以写篇文章来记录一下 ls   显示当前路径下的文件,常用的有 -l 显示长格式  -a 显示所有包括隐 ...

  4. C# Winform 界面中各控件随着窗口大小变化

    在做一项工程中,由于不确定目标平台的分辨率,而正常使用要求铺满整个屏幕,所以界面中的各个控件必须能够适应窗口的变化. 首先想到的就是控件的百分比布局,但是再尝试写了几个控件的Location和Size ...

  5. 简单5步说清App软件在线开发、App制作多少钱?

    开发制作一款App,所有人都会首先关心开发一款App多少钱这个问题.从网上的信息来看,花费个几十万是很正常的事情,甚至有人说要花上百万才能制作出一款App.那么App软件的开发制作到底和什么有关?怎么 ...

  6. windows 文件权限导致的 git 问题

    windows 文件权限导致的 git 问题 在 windows 上使用 git 时,会遇到明明什么都没有改动,但是 git status 显示一堆文件被修改.这时,通过 git diff 可看到什么 ...

  7. iptables nt

    占位... 扩展 1.其实匹配扩展中,还有需要加-m引用模块的显示扩展,默认是隐含扩展,不要使用 -m 状态检测的包过滤-m state       --state {NEW,ESTATBLISHED ...

  8. 【Selenium】4.创建你的第一个Selenium IDE脚本

    http://newtours.demoaut.com/ 这个网站将会用来作为我们测试的网址. 通过录制来创建一个脚本 让我们来用最普遍的方法——录制来创建一个脚本.然后,我们将会用回放的功能来执行录 ...

  9. java基本数据类型包装类

    Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数 ...

  10. PeopleTools预警程序制作

    预警程序的概念:在主页上显示一个查询的结果.这个查询就是一个Record. 一.在Application Designer建一个项目,包含所有需要的Record. CUX_REC_BLRY Recor ...