Spring使用教程(二)配置bean:静态工厂方法和实例工厂方法
2015-05-29 22:03
645 查看
/** * * 实例工厂方法:实例工厂的方法,先创建工厂本身,在调用工厂本身的实例方法返回bean实例 * * */ public class InstanceFactory { private Map<String,Car> cars=null; public InstanceFactory(){ cars=new HashMap<String, Car>(); cars.put("BMW",new Car("BMW",300000)); cars.put("benchi",new Car("benchi",333300000)); } public Car getCar(String brand){ return cars.get(brand); } }
View Code
<?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:util="http://www.springframework.org/schema/util" 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 http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.0.xsd"> <!-- 通过静态工厂方法配置Bean,注意不是配置静态工厂方法实例,而是bean实例 --> <!-- calss:指向静态工厂方法的全类名 factory-method:指向静态工厂方法的名字 constructor-arg:如果工厂静态方法需要参数,则使用constructor-arg来配置 --> <bean id="carfactory" class="com.test.spring.factorybean.StaticCarFactory" factory-method="getCar"> <constructor-arg value="BMW"></constructor-arg> <!-- 构造器注入 --> </bean> <!-- 配置工厂的实例 --> <bean id="instanceFactory" class="com.test.spring.factorybean.InstanceFactory"></bean> <!-- 通过实例工厂方法类配置bean --> <bean id="car" factory-bean="instanceFactory" factory-method="getCar"> <constructor-arg value="benchi"></constructor-arg> </bean> </beans>
相关文章推荐
- eclipse自动补全的设置
- Java Comparator和Comparable接口的compare方法
- 谈谈java的代理模式认识 三————CGLIB代理
- Java自动拆箱和自动装箱
- 菜鸟java记录四
- LeetCode-java实现-T2-Add Two Numbers
- Java Web:JSON 作为配置文件,简单读写的方法
- Spring.net--AOP
- java简易编辑器
- Java 得到泛型中得到T.class
- JAVA 静态成员 static
- Java文件
- JAVA-DAY5
- LeetCode-java实现-T3Longest Substring Without Repeating Characters
- JAVA-DAY4
- JAVA-DAY3
- Java 获得Class的绝对路径方法
- Java实现二叉树的遍历(多种方式实现前中后序的遍历)
- [Java]归并排序
- LeetCode-java实现-T4Median of Two Sorted Arrays