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

wordpress cms下载地址seo监控系统

wordpress cms下载地址,seo监控系统,做一个网站的流程是什么,高新网站开发建设多少钱利用模板模式和责任链模式实现数据校验 一、业务背景二、模板模式和责任链模式代码实现1、数据校验抽象处理器ValidateHandler2、数据校验责任链工具类ValidateChainUtil3、网元调整数据校验抽象类AbstractNodeCheckHandler4、依次定义3个责任链handler#xff0c;通过Order注… 利用模板模式和责任链模式实现数据校验 一、业务背景二、模板模式和责任链模式代码实现1、数据校验抽象处理器ValidateHandler2、数据校验责任链工具类ValidateChainUtil3、网元调整数据校验抽象类AbstractNodeCheckHandler4、依次定义3个责任链handler通过Order注解控制执行顺序 三、测试验证四、项目结构及源码 一、业务背景 对项目进行微重构的需求任务中发现有个旧业务代码一个Service的离线校验网元方法中竟然有将近12个逻辑校验代码非常臃肿可维护性大打折扣。因此需要对这个方法进行重构这里简单记录下涉及的重构方法算是抛砖引玉。 二、模板模式和责任链模式代码实现 1、数据校验抽象处理器ValidateHandler /*** 数据校验抽象处理器** author huahua* DATE 2024/8/9**/ public abstract class ValidateHandlerT {private ValidateHandlerT next;public void setNext(ValidateHandlerT next) {this.next next;}public abstract void doValidate(T validateData);public void next(T validateData) {if (next null) {return;}next.doValidate(validateData);} }2、数据校验责任链工具类ValidateChainUtil /*** 数据校验责任链工具类** author huahua* DATE 2024/8/9**/ public class ValidateChainUtil {public static T void doValidateChain(ListValidateHandlerT chainNodeList, T validateData) {if (CollectionUtils.isEmpty(chainNodeList)) {return;}// 初始化调用链所有节点for (int i 0; i chainNodeList.size()-1; i) {chainNodeList.get(i).setNext(chainNodeList.get(i 1));}// 取第一个节点进行校验chainNodeList.get(0).doValidate(validateData);} }3、网元调整数据校验抽象类AbstractNodeCheckHandler /*** 网元调整数据校验抽象类** author huahua* DATE 2024/8/9**/ Component public abstract class AbstractNodeCheckHandler extends ValidateHandlerNode {/*** 基础校验参数是否为空** param node*/public void checkParam(Node node) {if (node null) {throw new RuntimeException(node is empty);}} }4、依次定义3个责任链handler通过Order注解控制执行顺序 NodeCheckInitHandler /*** 网元校验信息初始化处理器** author huahua* DATE 2024/8/9**/ Component Order(100) public class NodeCheckInitHandler extends AbstractNodeCheckHandler {Overridepublic void doValidate(Node node) {System.out.println(执行校验node是否在数据库中业务逻辑......);// 初始化校验结束进入下一个节点next(node);} }NodeCheckPermissionHandler /*** 网元字段权限校验处理器** author huahua* DATE 2024/8/9**/ Component Order(200) public class NodeCheckPermissionHandler extends AbstractNodeCheckHandler {Overridepublic void doValidate(Node node) {System.out.println(执行校验网元字段权限业务逻辑.......);// 网元字段权限校验通过执行下一逻辑next(node);} }NodeCheckPoolHandler /*** 网元资源池校验处理类** author huahua* DATE 2024/8/9**/ Component Order(300) public class NodeCheckPoolHandler extends AbstractNodeCheckHandler {Overridepublic void doValidate(Node node) {System.out.println(执行网元资源池校验业务逻辑.......);// 网元资源池校验通过执行下一逻辑next(node);} }三、测试验证 通过访问接口可以看到控制台能够按照顺序正确执行数据校验逻辑利用模板模式和责任链模式实现数据校验正确结果得到验证 四、项目结构及源码 源码下载地址如下欢迎Star demo-springboot-mybatisplus
http://www.hkea.cn/news/14298519/

相关文章:

  • 网站建设芜湖建站空间
  • 金华专业网站制作公司wordpress二次元网站
  • 淘宝网站建设没法上传怎么办好的产品设计网站
  • 天气预报网站开发山东建设监理协会继续教育网站
  • 福田做商城网站建设哪家便宜龙岗网站建设流程
  • 石家庄有学校交做网站和优化的吗wordpress被植入广告
  • 如何设计网站建设引导页这么做输入文字的网站
  • 鼓楼微网站开发深圳建设集团有限公司官网
  • 信息网站 模板创意设计公司官网
  • 微信公众号的网站企业营销是啥意思
  • 哪个域名注册网站好西安网站建设多少钱
  • 网站建设颜色注意事项电子商城网站建设参考文献
  • 网站建设介绍推广用语西安网站建立
  • 教学成果申报网站 化工专业建设买了网站模版怎么做
  • 成都专业网站营销北辰手机网站建设
  • 有创意的网站开发都匀网站建设公司
  • 网站目录权限设置东莞软文推广
  • 关于怎样把网站建设好的一些建议cms影视源码采集
  • 校园局域网站建设费用给个网站能用的2022
  • 做网站需要备案吗服装网站建设发展状况
  • 哪个网站代做ppt便宜长清网站建设
  • 石家庄集团公司网站建设wordpress主题怎么设置tdk
  • 内衣网站建设推广手机网站 微信平台
  • 做类似简书的网站排名
  • php企业网站 源码企业电子商务网站建设总结
  • 做建筑效果图最好的网站12380网站建设情况
  • 集团公司网站模板装修网页设计网站
  • 推荐佛山伦教网站设计网站空间和数据库空间
  • 泰州企业网站模板建站网站重大建设项目公开发布制度
  • 网站微信登录怎么做杭州比较好的软装设计公司