责任链模式
责任链模式 在处理流程相关的业务的时候我们会经常碰到责任链模式的使用,所以对于这种设计模式我们还是应该有所了解的,所以本文就来记录下。 定义 将能够处理同一类请求的对象连成一条链,所提交的请求沿着链传递,链上的对象逐个判断是否有能力处理该请求,如果能则处理,如果不能则传递给链上的下一个对象处理。 场景: 1. 公司里面,报销个单据需要经过流程: • 申请人填单申请,申请给经理 • 小于1000,经理审查。 • 超过1000,交给总经理审批。 • 总经理审批通过 2.公司里面,请假条的审批过程: • 如果请假天数小于3天,主任审批 • 如果请假天数大于等于3天,小于10天,经理审批 • 如果大于等于10天,小于30天,总经理审批 • 如果大于等于30天,提示拒绝 具体实现代码 LeaveRequest 封装请假的相关信息 /** * 封装请假的基本信息 * @author 波波烤鸭 * */ public class LeaveRequest { // 员工名称 private String empName; // 请假天数 private int leaveDays; // 请假原因 private String reason; public LeaveRequest(String empName, int leaveDays, String reason) { super()