Spring IOC创建对象的方法

Spring IOC创建对象的方法

1、默认的构造器函数

在默认的配置情况下,spring容器是利用默认的构造器给类创建对象的

2、静态工厂模式

1
2
3
4
5
6
7
8
9
10
11
12
// 步骤:
// 1、静态工厂

public class HelloWorldFactory {

public static HelloWorld getInstance(){
return new HelloWorld();
}
}
// 2、提供一个HelloWorld类
// 3、在spring的配置文件中进行配置
<bean id="helloWorldCreateByStaticFactory" class="com.yc.spring.ioc.HelloWorldFactory" factory-method="getInstance" />

spring容器做的事:调用静态工厂方法创建对象,但是创建对象的方法的代码在工厂方法中

3、实例工厂模式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// 步骤
// 1、创建实例工厂类

public class HelloWorldFactory {

public HelloWorld getInstance(){
return new HelloWorld();
}
}
// 2、提供一个HelloWorld类
// 3、在spring的配置文件中进行配置
<!-- 配置实例工厂-->
<bean id="helloWorldFactory" class="com.yc.spring.ioc.HelloWorld2Factory" />
<!--
配置helloWorld3
factory-bean:指向了实例工厂
factory-method:指向了实例的工厂方法
-->
<bean id="helloWorld3" factory-bean="helloWorldFactory" factory-method="getInstance"/>