Spring_11_通过工厂方法配置 Bean
2017-01-18 23:05
513 查看
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- 通过静态工厂方法获取,(方法本身是静态的) 通过调用静态工厂方法创建 Bean 调用静态工厂方法创建 Bean是将对象创建的过程封装到静态方法中. 当客户端需要对象时, 只需要简单地调用静态方法, 而不同关心创建对象的细节. 要声明通过静态方法创建的 Bean, 需要在 Bean 的 class 属性里指定拥有该工厂的方法的类, 同时在 factory-method 属性里指定工厂方法的名称. 最后, 使用 <constrctor-arg> 元素为该方法传递方法参数. --> <bean id="car" class="com.hgh.spring.factorymethod.StaticFactoryMethod" factory-method="getCar"> <constructor-arg value="bmw"></constructor-arg> </bean> <!-- 通过在工厂初始化的时候,然后调用工厂中的方法(非静态方法,而是工厂方法,传入参数,返回某个值) 通过调用实例工厂方法创建 Bean 实例工厂方法: 将对象的创建过程封装到另外一个对象实例的方法里. 当客户端需要请求对象时, 只需要简单的调用该实例方法而不需要关心对象的创建细节. 要声明通过实例工厂方法创建的 Bean 在 bean 的 factory-bean 属性里指定拥有该工厂方法的 Bean 在 factory-method 属性里指定该工厂方法的名称 使用 construtor-arg 元素为工厂方法传递方法参数 --> <bean id="InstanceFactoryMethod" class="com.hgh.spring.factorymethod.InstanceFactoryMethod"></bean> <bean id="car2" factory-bean="InstanceFactoryMethod" factory-method="getCar"> <constructor-arg value="bmw"></constructor-arg> </bean> </beans>
静态工厂方法
package com.hgh.spring.factorymethod; import java.util.HashMap; import java.util.Map; public class StaticFactoryMethod { public static Map<String, Car> cars; static{ cars = new HashMap<String, Car>(); cars.put("audi", new Car("audi", 1200.00, 200)); cars.put("bmw", new Car("bmw", 1300.00, 300)); } public static Car getCar(String name){ return cars.get(name); } }
实例工厂方法创建 Bean
package com.hgh.spring.factorymethod; import java.util.HashMap; import java.util.Map; public class InstanceFactoryMethod { public static Map<String, Car> cars; public InstanceFactoryMethod(){ cars = new HashMap<String, Car>(); cars.put("audi", new Car("audi", 1200.00, 200)); cars.put("bmw", new Car("bmw", 1300.00, 300)); } public Car getCar(String name){ return cars.get(name); } }
相关文章推荐
- spring 通过工厂方法配置Bean
- spring 通过工厂方法配置Bean
- spring4-2-bean配置-9-通过工厂方法配置bean
- spring(12) Spring的通过工厂方法配置Bean
- Spring 通过工厂方法(Factory Method)来配置bean
- spring 9 bean配置--通过工厂方法(静态工厂方法&实例工厂方法
- Spring-10:通过工厂方法配置Bean
- Spring_通过工厂方法配置 Bean
- Spring学习记录(九)---通过工厂方法配置bean
- spring中通过工厂方法配置Bean
- Spring学习(7)--Spring中通过工厂方法和FactoryBean配置bean
- Spring通过工厂方法配置bean
- Spring_通过工厂方法配置bean(9)
- Spring通过工厂方法配置 Bean
- spring管理bean的生命周期与spring通过工厂方法配置bean
- Spring通过工厂方法配置Bean
- Spring 通过工厂方法(Factory Method)来配置bean
- spring通过工厂方法和FactoryBean来配置Bean
- Spring初学之通过工厂方法配置Bean
- Spring 通过工厂方法(Factory Method)来配置bean