读书人

简略工厂 工厂方法 抽象工厂

发布时间: 2013-02-24 17:58:56 作者: rapoo

简单工厂 工厂方法 抽象工厂
http://www.cnblogs.com/kelin1314/archive/2009/01/04/1368605.html

前提 所有产品共用一个接口

简单工厂 工厂中返回一个new的产品
如果产品种类增加了, 需要修改工厂的代码

工厂方法 工厂是一个借口, 下面有具体实现工厂
如果产品种类增加了, 接口不用修改,只需要增加实现工厂

抽象工厂 如果产品分为两个接口,而这些产品又互相有联系
【没必要】

----
另外网上说到的用抽象工厂来处理DAO在不同数据库间的切换问题
但实际上可以用facade模式来实现类似功能
HPSC中用到了facade模式来设置调用外系统的接口
可以随时切换成开发环境,测试环境,生成环境
用spring的annotation来管理

@Service("sbsFacade")public class SBSFacadeImpl implements ISBSFacade {    @Autowired    @Qualifier("customerOrgService")    private CustomerOrganizationService customerOrgService;...


@Service 将这个类放在spring容器内管理,并定义个id
@Autowired
@Qualifier("customerOrgService") 从spring环境中将id为customerOrgService的bean注入到变量中

如果要切换成开发环境可以用
@Qualifier("customerOrgServiceMockData") 来切换

读书人网 >编程

热点推荐