码迷,mamicode.com
首页 > 编程语言 > 详细

Spring工厂模式

时间:2014-05-04 11:44:53      阅读:338      评论:0      收藏:0      [点我收藏+]

标签:style   blog   class   code   java   color   

普通工厂模式和抽象共产模式的优缺点:(1)普通工厂模式能够在单一产品维度上进行扩展,但是增加一个产品就要增加一个相应的工厂类,这样就会造成工厂的泛滥;(2)抽象工厂模式:很好的实现了一批产品的更新,但是,另一方面在单一产品维度上不好扩展。

 

而Spring的工厂模式原理是将Bean的信息放在配置文件当中。我们要模拟的话,可以用Java当中提供的一个特殊的类java.util.Properties,从而将类名信息在bean.properties文件中进行配置。将配置信息读取出来后,再利用反射技术进行实例化。

bubuko.com,布布扣
 1 package program.spring.factory;
 2 import program.factory.model.Moveable;
 3 
 4 public class Car implements Moveable{
 5     @Override
 6     public void run() {
 7        System.out.println("Car running 。。。");        
 8     }
 9 }
10 
11 
12 import java.util.Properties;
13 import program.factory.model.Moveable;
14 public class Main {
15     public static void main(String[]args) throws Exception{
16         Properties pro=new Properties();
17         pro.load(Main.class.getClassLoader().getResourceAsStream("bean.properties"));
18         String vehicleType=(String)pro.get("VehicleType");
19         Class clazz=Class.forName(vehicleType);
20         Moveable mov=(Moveable)clazz.newInstance();
21         mov.run();
22     }
23 }
24 
25 
26 properties文件:
27 VehicleType=program.spring.factory.Car
bubuko.com,布布扣

 

Spring工厂模式,布布扣,bubuko.com

Spring工厂模式

标签:style   blog   class   code   java   color   

原文地址:http://www.cnblogs.com/feijishuo/p/3705486.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!