在Spring中装配bean的基本xml配置

开发 后端
本文介绍在Spring中装配bean的基本xml配置以及实现让spring容器来自动进行。

在spring容器内拼凑bean叫作装配。装配bean的时候,你是在告诉容器,需要哪些bean,以及容器如何使用依赖注入将它们配合在一起。

理论上,装配bean可以从任何资源获得,包括属性文件,关系数据库等,但xml是最常见的spring 应用系统配置源。Spring中的几种容器都支持xml配置使用装配bean,包括:
XmlBeanFactory ,
ClassPathXmlApplicationContext ,
FileSystemXmlApplicationContext ,
XmlWebApplicationContext

基本的xml配置包括如下几个方面:
1.添加一个bean
2.设置bean的属性
2.1 手动设置
2.1.1 通过Setter方法
2.1.2 通过构造器
2.2 自动设置

xml配置其中bean的属性即为bean里的成员变量,这些成员变量值的获得可以通过setter方法,例如某个属性为name,则setter方法为 setName(String name);或者通过构造器在类被实例化时初始化。Setter方法(例如setName方法)或者构造器的调用都可以通过在xml文件里进行配置,从而实现让spring容器来自动进行。
1.添加一个bean,以下是一个例子:

  1. <bean   
  2. id = “mybean”  
  3. Class = “blog.spring.MyBean”  
  4. Singleton = “false”  
  5. init-method = “initMethod”  
  6. destroy-method = “destroyMethod”  
  7. autowire = “autowire type”  
  8. /> 

下面是对该标签里各个属性的解释:
Id : 标识该bean的名称,通过factory.getBean(“id”)来获得实例。
Class : 该bean的类路径。
Singleton : 默认为true,即单实例模式,每次getBean(“id”)时获取的都是同
一个实例,如果设置为false,即原型模式,则每次获取的是新创建的实例。
Init-method : 在bean实例化后要调用的方法(bean里定义好的方法)。
Destroy-method : bean从容器里删除之前要调用的方法。
Autowire : 其属性要通过何种方法进行属性的自动装配。

对于上述的各个属性,id和class是必要的,其他的则可以省略。例如如果设置了autowire的值,则表明需要自动装配,否则是手动装配。

【编辑推荐】

  1. Spring Module 0.3版本发布
  2. 在Spring中XFire构建Web Service
  3. Spring Web Services框架入门研究
  4. Sun GlassFish对Spring的支持
  5. 详细介绍Spring的核心

责任编辑:佚名 来源: IT专家网
相关推荐

2023-09-28 09:17:18

SpringBootBean

2010-03-11 13:54:01

Python安装配置

2022-11-21 08:11:18

2012-08-17 09:48:55

MongoDB

2010-03-29 14:48:58

CentOS系统

2020-10-14 06:23:54

SpringBean实例化

2011-04-12 09:53:32

Spring

2009-07-07 11:33:06

JDK1.6

2009-06-19 11:18:51

Factory BeaSpring配置

2009-09-14 19:11:20

XML和Java Be

2024-02-23 10:33:34

SpringBean容器

2009-07-20 15:08:41

Spring实例化Be

2011-11-08 21:55:58

MRTG 配置

2011-03-30 15:05:40

MRTG安装

2011-04-02 15:26:51

Cacti安装

2010-05-12 18:05:45

linux下subvesubversionapache配置

2011-03-25 13:40:28

Cacti安装配置

2011-04-02 15:26:58

Cacti安装

2011-04-02 15:17:59

2009-06-17 17:04:37

BeanFactorySpring
点赞
收藏

51CTO技术栈公众号