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

佛山企业网站建设平台哈市今日头条最新

佛山企业网站建设平台,哈市今日头条最新,做化工的外贸网站都有什么地方,广州有几个区图片责任链模式是将链中的每一个节点看作是一个对象,每个节点处理的请求不同,且内部自动维护一个下一节点对象。 当一个请求从链式的首段发出时,会沿着链的路径依此传递给每一个节点对象,直至有对象处理这个请求为止。 属于行为型模式…

责任链模式是将链中的每一个节点看作是一个对象,每个节点处理的请求不同,且内部自动维护一个下一节点对象。
当一个请求从链式的首段发出时,会沿着链的路径依此传递给每一个节点对象,直至有对象处理这个请求为止。
属于行为型模式。

1、定义处理器接口

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class Order {private Integer creditScore;private Integer quantity;
}
public interface OrderHandler {boolean handle(Order order);
}

2、实现不同的校验处理器
信用校验处理器:

@Component
public class CreditHandler implements OrderHandler{@Overridepublic boolean handle(Order order) {if (order.getCreditScore() % 2 != 0){System.out.println("信用不足");return false;}return true;}
}

库存校验处理器:

@Component
public class StockHandler implements OrderHandler{@Overridepublic boolean handle(Order order) {if (order.getQuantity() > 20){System.out.println("库存不足");return false;}return true;}
}

3、责任链管理器

@Component
public class OrderHandlerChain {private final List<OrderHandler> handlers;public OrderHandlerChain(List<OrderHandler> handlers){this.handlers = handlers;}public boolean process(Order order){for (OrderHandler handler : handlers) {if (!handler.handle(order)){return false;}}return true;}
}

4、服务类调用责任链

@Component
public class OrderService {private final OrderHandlerChain handlerChain;private OrderService(OrderHandlerChain handlerChain){this.handlerChain = handlerChain;}public boolean processOrder(Order order){boolean process = handlerChain.process(order);if (process){System.out.println("校验成功");}return process;}
}

5、测试

@SpringBootTest
public class OrderServiceTest {@Autowiredprivate OrderService orderService;@Testpublic void testOrderProcess(){Order order = new Order(2, 5);orderService.processOrder(order);Order order1 = new Order(2, 5);orderService.processOrder(order1);Order order2 = new Order(2, 21);orderService.processOrder(order2);}}

6、优点

  • 解耦逻辑:每个校验逻辑独立实现,符合单一职责原则
  • 灵活扩展:新增校验只需添加新的Handler实现类,无需修改现有代码
  • 支持动态调整:可通过调整List的顺序来改变校验顺序
  • 利用Spring自动装配:使用Spring的依赖注入简化责任链构建
http://www.wooajung.com/news/22891.html

相关文章:

  • 一个网站用多个域名网络推广合作协议
  • 移动局域网ip做网站北京十大最靠谱it培训机构
  • 佛山自助建站软件浏览器如何推广自己网站
  • 公司的网站设计制作下载爱城市网app官方网站
  • 东莞建设网站流程优化网站排名如何
  • wordpress 防下载seo诊断
  • 网银汇款企业做网站用途写什么抖音流量推广神器软件
  • 如何在税务局网站做注册地址变更员工培训课程
  • 织梦做的网站 首页有空白百度如何推广网站
  • 跟我一起做网站附子seo
  • 合肥建设网官方网站3a汽车集团公司网络营销方案
  • 专做动漫av的网站信息流广告怎么投放
  • 深圳做营销网站的公司简介什么软件可以免费引流
  • 天津开发网站公司百度关键词优化推广
  • 广州网站制作开发公司网络营销软件排行
  • 中国 网站服务器 租金股票指数是什么意思
  • 做零售的外贸网站武汉最新疫情
  • 成都市公园城市建设局网站网站怎么做外链
  • 比较好的h5制作软件seo外包公司需要什么
  • 在深圳做it的要做赌博网站吗关于市场营销的100个问题
  • 青岛做网站百度贴吧网页入口
  • 大渡口区网站建设打开百度首页
  • 做网站不打广告怎么赚钱网络优化工程师简历
  • wordpress做网站卡吗百度广告投放电话
  • 濮阳网络安全报警电话衡阳seo排名
  • 网站中页面模板设计2023年6月份又封城了
  • 西安市建设银行网站新闻发布会稿件
  • 天津网站建设哪家好地方网站建设
  • nginx wordpress 502seo关键词优化技术
  • aspcms漏洞网站排名优化推广