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

局部适配器在产品和二次开发中的应用

局部适配器这个说法是本人从产品项目中总结出的一种叫法。原理是在产品项目的某一项业务处理时,嵌入抽象方法和默认实现,以便产品作二次开发时,不用迁分支或重写就适配修改产品工程的局部逻辑。该方法使用原理很简单,但好处明显,在一些频繁小修小改的固定代码段中,使用该方案具备很高的灵活度和可修改性。业务相对固定的话,可用来代替模块拉分支操作。
具体使用示例如下:

局部适配器定义:

public interface ProposalNodeAdaptor  {static boolean completeWrapper(QueryWrapper<Proposal> query, ProposalSelectRequest request) {ProposalNodeAdaptor adaptor = ZYSpringUtils.getBean(ProposalNodeAdaptor.class);return null != adaptor && adaptor.completeTableWrapper(query, request);}default boolean completeTableWrapper(QueryWrapper<Proposal> query, ProposalSelectRequest request) {return false;}// 其他适配

局部适配在产品中的应用:

  public void setWrapper(QueryWrapper<Proposal> query) {// ......一些条件设置// 如果适配成功,走适配逻辑boolean adaptorTableIdSuccess = ProposalNodeAdaptor.completeWrapper(query, this);if (!adaptorTableIdSuccess) {SuggestionTableIdAdapter.setWrapperByTableId(query, this);}// ......一些条件设置}

局部适配在二次开发中的应用:

@Component
public class ProjectProposalNodeAdaptor implements ProposalNodeAdaptor {@Overridepublic boolean completeTableWrapper(QueryWrapper<Proposal> query, ProposalSelectRequest request) {if (FIRST_VERIFY_TABLE_ID.equals(request.getTableId())) {// 二次开发适配条件return true;} else if (SECOND_VERIFY_TABLE_ID.equals(request.getTableId())) {// 二次开发适配条件return true;} else if (ID_PROP_PROPOSAL_PREPAREVERIFY.equals(request.getTableId())) {// 二次开发适配条件return true;} else if (PROPOSAL_ASSIGN_GROUP_TABLE_ID.equals(request.getTableId())) {// 二次开发适配条件return true;}return false;}// 其他适配
}
http://www.lryc.cn/news/336313.html

相关文章:

  • C++之类和对象(上)
  • Linux 测试磁盘读写速度
  • 【YOLOv8】Yolov5和Yolov8网络结构的分析与对比
  • 无人机低空数字摄影测量系统
  • Disk Drill Enterprise for Mac v5.5.1515数据恢复软件中文版
  • day55 最长递增子序列 最长连续递增子序列 最长重复子数组
  • 使用Springboot配置生产者、消费者RabbitMQ?
  • 代码随想录算法训练营第46天|139.单词拆分、多重背包问题
  • 数组与伪数组的区别
  • Java集合List
  • elasticsearch基础命令
  • Capture One 23 Enterprise for Mac中文版 全面的图像处理工具
  • Qt案例 通过调用Setupapi.h库实现对设备管理器中设备默认驱动的备份
  • 如何理解JVM
  • 第十四讲:C语言字符函数和字符串函数
  • 华为海思2024春招数字芯片岗机试题(共9套)
  • 分类预测 | Matlab实现KPCA-IDBO-LSSVM基于核主成分分析和改进蜣螂优化算法优化最小二乘支持向量机分类预测
  • 与机器对话:ChatGPT 和 AI 语言模型的奇妙故事
  • 概率论基础——拉格朗日乘数法
  • [xboard]real6410-6.2 移植kernel网络驱动
  • Quarkus初探
  • 90天玩转Python-02-基础知识篇:初识Python与PyCharm
  • List操作的一些常见问题
  • 如何使用Java和RabbitMQ实现延迟队列?
  • AI论文速读 | TF-LLM:基于大语言模型可解释性的交通预测
  • 智慧矿山视频智能监控与安全监管方案
  • 2024春算法训练4——函数与递归题解
  • 【C++】C++知识点复习
  • SpringBoot+Vue,轻松实现网页版人脸登录与精准识别
  • 深入浅出 -- 系统架构之垂直架构