Spring通过工厂方法配置Bean
来源:互联网 发布:nodejs 数据库操作 编辑:程序博客网 时间:2024/04/28 06:33
通过静态工厂方法配置Bean
1、调用静态工厂方法创建Bean是将对象创建的过程封装到静态方法中,当客户端需要对象时,只需要简单地调用静态方法,而不用关心创建对象的细节
2、要声明通过静态方法创建的Bean,需要在Bean的class属性里指定拥有该工厂的方法的类,同时在factory-method属性里指定工厂方法的名称。最后使用< constrctor-arg>元素为该方法传递方法参数
代码示例
1、静态工厂方法
/* * 静态工厂方法:直接调用某一个类的静态方法就可以返回Bean的实例 */public class StaticCarFactory { private static Map<String ,Car> cars=new HashMap<String ,Car>(); static{ cars.put("ford",new Car("ford",3400000)); cars.put("audi",new Car("audi",300000)); } //静态工厂方法 public static Car getCar(String name) { return cars.get(name); }}
配置
<!-- 通过静态工厂方法来配置bean 注意不是配置静态工厂方法的实例,而是配置bean的实例 --><!-- class属性:指向静态工厂方法的全类名 factory-method:指向静态方法名 constructor-arg:如果工厂方法需要传入参数,则使用constructor-arg来配置参数 --> <bean id="car" class="spring.bean.factory.StaticCarFactory" factory-method="getCar"> <constructor-arg value="audi"></constructor-arg> </bean>
运行结果
通过实例工厂方法配置Bean
实例工厂方法: 将对象的创建过程封装到另外一个对象实例的方法里. 当客户端需要请求对象时, 只需要简单的调用该实例方法而不需要关心对象的创建细节.
要声明通过实例工厂方法创建的 Bean
①在 bean 的 factory-bean 属性里指定拥有该工厂方法的 Bean
②在 factory-method 属性里指定该工厂方法的名称
③使用 construtor-arg 元素为工厂方法传递方法参数
代码示例
1、实例工厂方法
/* * 实例工厂方法:实例工厂的方法,即先需要创建工厂本身,再调用工厂的实例方法来返回bean的实例 */public class InstanceCarFactory { private Map<String ,Car> cars=null; public InstanceCarFactory() { cars=new HashMap<String ,Car>(); cars.put("audi",new Car("audi",300000)); cars.put("ford",new Car("ford",400000)); } public Car getCar(String brand) { return cars.get(brand); }}
配置
<!-- 即先需要配置工厂本身,再引用工厂的实例方法来配置bean的实例 --> <bean id="carFactory" class="spring.bean.factory.InstanceCarFactory"></bean> <bean id="car2" factory-bean="carFactory" factory-method="getCar"> <constructor-arg value="audi"></constructor-arg> </bean>
运行结果
0 0
- spring 通过工厂方法配置Bean
- Spring-10:通过工厂方法配置Bean
- spring中通过工厂方法配置Bean
- Spring通过工厂方法配置Bean
- Spring中通过工厂方法配置bean
- Spring通过工厂方法配置bean
- Spring通过工厂方法配置bean
- spring(12) Spring的通过工厂方法配置Bean
- Spring 通过工厂方法(Factory Method)来配置bean
- spring通过工厂方法和FactoryBean来配置Bean
- Spring 通过工厂方法(Factory Method)来配置bean
- Spring框架学习(8):通过工厂方法配置bean
- Spring-12,通过工厂方法和FactoryBean配置bean
- Spring 通过工厂方法(Factory Method)来配置bean
- spring学习笔记九 通过工厂方法配置bean
- spring 9 bean配置--通过工厂方法(静态工厂方法&实例工厂方法
- spring 工厂方法配置bean
- spring管理bean的生命周期与spring通过工厂方法配置bean
- 数组指针与二级指针如何转化
- SDOI 2010 地精部落 DP
- android studio测试--Uiautomator
- 线程小酌之JAVA中的阻塞队列
- Codeforces 761C-Dasha and Password
- Spring通过工厂方法配置Bean
- 集合(Map)知识小结(二)
- scala中协变(Covariation)的应用场景
- DRUIDEOI
- Bootstarp 基础 默认对代码的处理
- MVC详解:了解真正所谓的"框架"
- hdu 2082(母函数)
- kali 2.0添加ibus-pinyin输入法
- hadoop伪分布式搭建