Spring中对Bean的配置方式一共有三种:
- 通过全类名反射进行配置(使用的最多)
- 通过工厂方法(静态工厂方法&实例工厂方法)
- 通过FactoryBean(不常用,不推荐)
本篇文章说的就是第二种的两种方式。
使用工厂方法来配置Bean的方式有两种
1.使用静态工厂方法
package cam.spring.factory;
import java.util.HashMap;
import java.util.Map;
public class StaticCarFactory {
private static Map<String,Car> cars = new HashMap<String, Car>();
static {
cars.put("Audi", new Car("Audi", 300000));
cars.put("Baoma", new Car("Baoma", 500000));
}
//静态工厂方法:
public static Car getCar(String name) {
return cars.get(name);
}
}
在StaticCarFactory类中必须要有一个静态的Car对象获取方法 ,这样在配置文件中可以直接通过静态工厂直接实例化一个Car类,并且不用给Car对象的属性赋值。
<