首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

《有点模式》- 服务提供者

2012-09-08 
《有些模式》- 服务提供者?/** * 服务接口 * @author Macrotea * */public interface Service {public abstr

《有些模式》- 服务提供者

?/** * 服务接口 * @author Macrotea * */public interface Service {public abstract void doSomeService();}

?

?

/** * 服务提供者接口 * @author Macrotea * */public interface Provider {Service newService();}

?

?

public class ServiceFactory {private static final String DEFAULT_PROVIDER_NAME = "<def>";private static final HashMap<String, Provider> providerMap = new HashMap<String, Provider>();/*注册服务提供者*/public static void rigiserProvider(Provider p){providerMap.put(DEFAULT_PROVIDER_NAME, p);}public static void rigiserProvider(String name,Provider p){providerMap.put(name, p);}/*获得服务*/public static Service newInstanse() throws Exception{return newInstanse(DEFAULT_PROVIDER_NAME);}public static Service newInstanse(String name){Provider p=providerMap.get(name);if(p==null){throw new IllegalArgumentException("系统根据名字没有找到提供者出错:");}return p.newService();}}

?

热点排行