工厂模式架构设计
工厂模式主要是用来创建对象的。而这些对象,很有可能会变化,变成其它的对象。那我们在设计工厂时,就必须要经得起这样的变化。
在我看到的开源代码中,就有两种方式去适应这种变化。
[list]使用配置文件这是一种比较常见的方式,把实体类写在配置文件中。创建时使用反射的方式生成。
String singletonClass = .... // 从配置文件中取得Class clazz = Class.forName(singletonClass);Object result = (SingletonStrategy) clazz.newInstance();使用系统参数
String singletonClass = System.getProperty( "org.dom4j.DocumentFactory.singleton.strategy", "org.dom4j.util.SimpleSingleton");