设计模式(26)--业务代表模式
来源:互联网 发布:php服务器绑定域名 编辑:程序博客网 时间:2024/06/11 15:03
什么是业务代表模式?
业务代表模式(Business Delegate Pattern)用于对表示层和业务层解耦。它基本上是用来减少通信或对表示层代码中的业务层代码的远程查询功能。在业务层中我们有以下实体。
客户端(Client) - 表示层代码可以是 JSP、servlet 或 UI java 代码。
业务代表(Business Delegate) - 一个为客户端实体提供的入口类,它提供了对业务服务方法的访问。
查询服务(LookUp Service) - 查找服务对象负责获取相关的业务实现,并提供业务对象对业务代表对象的访问。
业务服务(Business Service) - 业务服务接口。实现了该业务服务的实体类,提供了实际的业务实现逻辑。
public interface BusinessService { public void doProcessing();}
public class EJBService implements BusinessService { public void doProcessing() { System.out.println("Processing task by invoking EJB Service"); }}
public class JMSService implements BusinessService { public void doProcessing() { System.out.println("Processing task by invoking JMS Service"); }}
public class BusinessLookUp { public BusinessService getBusinessService(String serviceType){ if(serviceType.equalsIgnoreCase("EJB")){ return new EJBService(); }else { return new JMSService(); } }}
public class BusinessDelegate { private BusinessLookUp lookupService = new BusinessLookUp(); private BusinessService businessService; private String serviceType; public void setServiceType(String serviceType){ this.serviceType = serviceType; } public void doTask(){ businessService = lookupService.getBusinessService(serviceType); businessService.doProcessing(); }}
public class Client { BusinessDelegate businessService; public Client(BusinessDelegate businessService){ this.businessService = businessService; } public void doTask(){ businessService.doTask(); }}
public class BusinessDelegatePatternDemo { public static void main(String[] args) { BusinessDelegate businessDelegate = new BusinessDelegate(); businessDelegate.setServiceType("EJB"); Client client = new Client(businessDelegate); client.doTask(); businessDelegate.setServiceType("JMS"); client.doTask(); }}
阅读全文
0 0
- 设计模式(26)--业务代表模式
- 设计模式学习笔记--业务代表模式
- 设计模式【业务代表模式BusinessDelegatePattern】
- 设计模式学习—业务代表模式(Business Delegate Design Pattern)
- Java Business Delegate Pattern(业务代表模式)
- 6、业务隔离(工厂设计模式)
- 大话设计模式(四 业务的封装)
- 《设计模式 ● 适配器》之业务场景
- 《设计模式 ● 观察者》之业务场景
- 《设计模式 ● 外观》之业务场景
- OEA 中的业务控制器设计模式
- hjr学习-设计模式:业务逻辑层
- 研磨设计模式之迭代器业务场景
- 为什么业务中很少用到设计模式
- 为什么业务中很少用到设计模式
- 质量保证的六个模式(4) - 客户代表质量模式
- 业务逻辑层的设计(四)——表模块模式简介
- 校验业务与主逻辑解耦设计探讨与实践(观察者模式篇)
- KMP模板题汇总(更新中。。。)
- Python 常见错误(雷区)
- Android中shape的使用
- 【linux 学习】创建快捷方式(linux mint)
- SKSEC
- 设计模式(26)--业务代表模式
- css2学习笔记整理总汇
- springmvc工作原理以及源码分析(基于spring3.1.0)
- 1.1 使用IntelliJ IDEA搭建Spring-Boot的"Hello World"项目
- Python学习零散杂记(2017-10-27)
- python_批量转换腾讯云短信模版格式
- vue读书笔记6
- 使用Android Studio开发遇到的问题集合(转载)
- 分享一个利用OpenGl处理图像的H264与H265播放器