当前位置: 首页 > news >正文

余姚建设网站南京网站搭建

余姚建设网站,南京网站搭建,设置网站维护页面,通许网站建设我将通过一个贴近现实的故事——请假审批流程,带你了解和掌握责任链模式。 什么是责任链模式? 责任链模式是一种行为设计模式,它让你可以避免将请求的发送者与接收者耦合在一起,让多个对象都有处理请求的机会将这个对象连成一条…

我将通过一个贴近现实的故事——请假审批流程,带你了解和掌握责任链模式

什么是责任链模式?

责任链模式是一种行为设计模式,它让你可以避免将请求的发送者与接收者耦合在一起,让多个对象都有处理请求的机会将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止

img

责任链模式的使用场景是什么?

当你希望在一个对象链上按顺序发送请求,让其中任何一个对象都有机会处理这个请求时,就可以使用责任链模式。这样,发送者会与一个或多个对象进行解耦合

如何在实际中使用责任链模式?

让我们看看如何在"请假审批"这个场景中使用责任链模式。首先,我们为所有审批人创建一个通用的接口:

public interface Approver {void setNextApprover(Approver nextApprover);void handleRequest(LeaveRequest request);
}

然后,我们为需要处理的请求定义一个类:

public class LeaveRequest {private int leaveDays;// 基础信息如姓名、部门等public LeaveRequest(int leaveDays) {this.leaveDays = leaveDays;}public int getLeaveDays() {return leaveDays;}
}

接着,我们分别实现各级审批人,例如,直接主管:

public class Supervisor implements Approver {private Approver nextApprover;@Overridepublic void setNextApprover(Approver nextApprover) {this.nextApprover = nextApprover;}@Overridepublic void handleRequest(LeaveRequest request) {if (request.getLeaveDays() <= 3) {// 批准请求} else {// 转交给更高级别的主管if (nextApprover != null) {nextApprover.handleRequest(request);}}}
}// 你可以创建更多的审批人,例如经理,HR等,它们的实现方式与主管类似。

接下来,我们可以构建一个完整的责任链:

Approver supervisor = new Supervisor();
Approver manager = new Manager();
Approver hr = new HR();// 设置责任链
supervisor.setNextApprover(manager);
manager.setNextApprover(hr);// 创建一个请假请求
LeaveRequest request = new LeaveRequest(5);
// 发送请求
supervisor.handleRequest(request);

在这个例子中,由于请假天数超过了主管的审批权限(3天),所以主管将请求传递给了经理;如果经理也无法处理,它将再传递给HR。这样,责任链模式使我们可以简单地添加或者删除审批级别,并且使审批过程清晰透明

总结,责任链模式对于管理一个分层次的请求处理机制非常有用,它降低了请求的发送者和接收者之间的耦合度,增强了系统的扩展性。

http://www.yayakq.cn/news/8655/

相关文章:

  • 企业网站建设有什么好处emlog转wordpress
  • 大大福利站网站建设怎么使用电脑是做网站
  • sem推广竞价做网站优化常用工具
  • 常用素材网站网站怎么做留言板
  • 怎样在网上做环保设备网站动漫推荐
  • 网站建设背景需要写些什么软件手工木雕网站建设策划书
  • 网站开发 会员模块兰州瞒报数据
  • dede 网站地图模板htm住房和城乡建设部网站进不去
  • 网站开发合作重庆seo顾问
  • 搭建网站怎么挣钱找别人做网站要注意什么软件
  • 网站虚拟机可以自己做吗中文网站建设工具
  • 企业网站设计与实现网站建设公司现在还挣钱吗
  • 咨询公司前景好不好宁波做网站seo的
  • 建站平台 iis厦门电信网站备案
  • 一般做平面网站多少钱开发网络新技术的平台
  • 聊城wap网站制作网站页头图片
  • 安徽省建设监理协会网站什么是大型门户网站
  • 网站整体克隆包含后台南昌网络营销网站
  • 十堰最专业的网站建设公司湖北外贸网站建设费用
  • 网站被攻击打不开怎么办开发者工具app安卓版
  • 网站建设制作方式有哪些兰亭集势网站模板
  • 做网站ui主要研究内容网站敏感关键词.txt
  • 深圳网站建设 百业望城经济建设开区门户网站
  • 网站建设要买哪些软件即墨网站建设即墨
  • 如何自己开发一个网站怎么用自己的电脑做网站服务器
  • 园林设计公司网站软件是怎么制作的
  • 做教育培训的网站闵行区网站开发
  • 千万pv网站开发成本中国建筑英才网官网手机版
  • 网页设计与网站开发超链接文交所网站开发
  • 简单html网站模板重庆旅游景点