15、Facade 外观模式

Facade

facade

facade facade

Facade

 

facade

 public class SystemFacade()
 {
     subSystemImpl1;
     subSystemImpl2;
     subSystemImpl3;
   
    public void runSystem()
    {
        subSystemImpl1.run();
        subSystemImpl2.run();
        subSystemImpl3.run();
    }
 }

1.SystemFacaderunSystem

SystemFacade

 public interface SystemFacade extends  SubSystem1,SubSystem2,SubSystem3()
 {
    public void runSystem();
 }

 

 public class SystemFacadeImpl implements  SystemFacade()
 {
    subSystem1;
    subSystem2;
    subSystem3;
 
    public void runSystem()
    {
        subSystem1.run();
        subSystem2.run();
        subSystem3.run();
    }
 }

Facade

 public interface ServiceFacade extends MetaDataService, FunctionPrivilegeService, LogService, ApprovalFlowService, ValidateRuleService,...... {
     <T> void registerService(Class<T> var1, T var2);
 
     <T> T getService(Class<T> var1);
    ......
 
     <A, T> T triggerAction(ActionContext var1, A var2);
 }

 

 @Service("serviceFacade")
 public class ServiceFacadeImpl implements ServiceFacade {
     private static final Logger log = LoggerFactory.getLogger(ServiceFacadeImpl.class);
     private Map<Class<?>, Object> serviceMap = Maps.newHashMap();
     @Autowired
     private MetaDataService metaDataService;
     @Autowired
     private ExportService exportService;
    ......
    }

使

  1. 使

  2. 访

 

公众号发哥讲

这是一个稍偏基础和偏技术的公众号,甚至其中包括一些可能阅读量很低的包含代码的技术文,不知道你是不是喜欢,期待你的关注。

img

如果你觉得文章还不错,就请点击右上角选择发送给朋友或者转发到朋友圈~

● 扫码关注我们

据说看到好文章不推荐的人,服务器容易宕机!

本文版权归发哥讲博客园共有,原创文章,未经允许不得转载,否则保留追究法律责任的权利。

 

posted @ 2020-08-06 15:10  发哥讲Java  阅读(193)  评论(0编辑  收藏  举报