三种实例化Bean的方式-Spring-从入门到精通
在 Spring 框架中,实例化 Bean 是一个非常重要的步骤。Bean 是 Spring 框架的核心组件,它可以提供业务逻辑、数据访问、事务处理等功能。实例化 Bean 的方式有多种,本文将介绍三种常见的实例化 Bean 的方式。
**使用类构造器实例化**
第一种方式是使用类构造器实例化,也就是没有参数的构造函数来建立 Bean 的实例。这种方式非常简单,通过在 XML 配置文件中指定 Bean 的类名和 ID,就可以实例化 Bean。
例如:<bean id="sample" class="com.fendou.service.impl.SampleImpl"/>
**使用静态工厂方法实例化**
第二种方式是使用静态工厂方法实例化。这种方式需要在工厂类中提供一个静态方法,用于创建 Bean 实例。然后,在 XML 配置文件中指定工厂类和方法名,就可以实例化 Bean。
例如:
```java
public class PersonFactory {
public static Person getPerson(){
return new Person();
}
}
```
然后,在 XML 配置文件中指定工厂类和方法名:<bean id="person2" class="com.spring.bean.PersonFactory" factory-method="getPerson"></bean>
**使用实例工厂方法实例化**
第三种方式是使用实例工厂方法实例化。这种方式需要在工厂类中提供一个非静态方法,用于创建 Bean 实例。然后,在 XML 配置文件中指定工厂类和方法名,就可以实例化 Bean。
例如:
```java
public class PersonFactory {
public Person getPerson2(){
return new Person();
}
}
```
然后,在 XML 配置文件中指定工厂类和方法名:<bean id="personFactory" class="com.spring.bean.PersonFactory"></bean><bean id="person3" factory-bean="personFactory" factory-method="getPerson2"></bean>
**Spring 框架的基本思想**
Spring 框架的基本思想是控制反转(Inversion of Control,IoC)和依赖注入(Dependency Injection,DI)。控制反转是指应用程序本身不负责依赖对象的创建和维护,而是由外部容器来负责。依赖注入是指容器来管理对象之间的依赖关系,而不是对象本身来管理。
**Spring 框架的特性**
Spring 框架最常用的特性包括:
* 利用 Spring 来创建对象(JavaBean 工厂)
* 利用 Spring 构建业务逻辑层
* 管理依赖关系
* 适应需求变更
* 利用 Spring 创建数据访问对象(DAO)
* 利用 Spring 进行事务处理
**Spring 框架的架构**
Spring 框架的架构主要包括三个部分:应用程序、IoC 容器和依赖项。应用程序是业务逻辑的实现部分,IoC 容器是负责管理对象之间的依赖关系的部分,依赖项是指对象之间的依赖关系。
**依赖注入的类型**
依赖注入有两种类型:构造器注入和设值方法注入。构造器注入是指通过类的构造方法注入依赖关系,而设值方法注入是指通过类的 setter 方法注入依赖关系。
本文介绍了三种实例化 Bean 的方式,并对 Spring 框架的基本思想、特性和架构进行了概述。