您的位置:首页 > 房产 > 建筑 > 园林景观设计网站推荐_广州十大电商公司_深圳seo公司排名_谷歌浏览器官网手机版

园林景观设计网站推荐_广州十大电商公司_深圳seo公司排名_谷歌浏览器官网手机版

2024/10/7 4:24:11 来源:https://blog.csdn.net/syb513812/article/details/142391463  浏览:    关键词:园林景观设计网站推荐_广州十大电商公司_深圳seo公司排名_谷歌浏览器官网手机版
园林景观设计网站推荐_广州十大电商公司_深圳seo公司排名_谷歌浏览器官网手机版

📢 大家好,我是 【战神刘玉栋】,有10多年的研发经验,致力于前后端技术栈的知识沉淀和传播。 💗

🌻 CSDN入驻不久,希望大家多多支持,后续会继续提升文章质量,绝不滥竽充数,欢迎多多交流。👍

文章目录

    • 写在前面的话
    • 技术简介
    • 基础入门
    • 低代码场景
    • 总结陈词

写在前面的话

近期正在更新设计模式和微信小程序两个系列的文章,这边中途打断一下,由于工作中使用到LiteFlow,觉得可圈可点,决定先插队分享一下相关内容。

技术简介

LiteFlow 是一个轻量级的工作流引擎,旨在简化业务流程的定义和执行,特别适合微服务架构和快速开发的场景。官网对其概括是:轻量,快速,稳定可编排的组件式规则引擎。

关于其更多的介绍、优点等内容,直接参考《LiteFlow 官网》了解即可,这边不过多赘述。

现实情况是,博主所在公司正在研发低代码相关产品,其中服务引擎部分基于 LiteFlow 完成。由于 LiteFlow 在低代码开发的场景下,允许自定义很多组件,配合上其组件编排的能力,正是它灵活性和可扩展性的体现。


基础入门

准备一个SpringBoot3.x的Demo项目,开始试用一下。

Step1、引入Maven依赖

<dependency><groupId>com.yomahub</groupId><artifactId>liteflow-spring-boot-starter</artifactId><version>2.12.3</version>
</dependency>

Step2、编写自定义组件

@LiteflowComponent("ProcessC")
@Slf4j
public class ProcessC extends NodeComponent {@Overridepublic void process() {log.info(" ===== Processing C 正在执行");}
}@LiteflowComponent("ProcessD")
@Slf4j
public class ProcessD extends NodeComponent {@Overridepublic void process() {log.info(" ===== Processing D 正在执行");}
}

Step3、新建config/flow.el.xml规则文件,并在application.yml加载

<?xml version="1.0" encoding="UTF-8"?>
<flow><chain name="chainTest">THEN(ProcessC, ProcessD);</chain>
</flow>
# 服务引擎
liteflow:rule-source: config/**/*.xml

Step4、编写测试接口

@GetMapping("/test3")
public String test3() {String result = "";LiteflowResponse response = flowExecutor.execute2Resp("chainTest");if (response.isSuccess()) {result = response.getSlot().getExecuteStepStr();}return result;
}

访问接口:输出得到 ProcessC==>ProcessD

【点评示例】

上面例子太简单了,只是说明一下如何使用,甚至连出入参传递、分支选择、同步异步、数据库调用等复杂场景都没演示到,同时,如果仅仅两个节点依次调用,压根用不上流程引擎。

LiteFlow的能力远不止如此,用法也没有这么单薄,本篇仅为入门篇,后续会详细介绍实用用法。

就像官网介绍的,LiteFlow真正适合的场景如下,可能同时具备串行、并行、选择、条件、循环等复杂流程。


低代码场景

看到这边,大致也知道 LiteFlow 的组件编排能力,它擅长把流程进行拆解、组装,那在低代码场景下又有什么优势呢?

  • 自定义节点:LiteFlow 允许你自定义节点,这意味着你可以创建自己的组件,以满足特定业务需求例如,你可以创建一个自定义节点来处理特定类型的数据库操作、发送邮件、调用外部 API 等等。
  • 自定义流程定义:LiteFlow 支持多种流程定义方式,包括 XML、JSON 和代码。这使得你可以根据需要创建自定义的流程定义,以满足特定业务需求。
  • 自定义数据处理:LiteFlow 支持多种数据处理方式,例如数据转换、数据校验、数据存储等等。你可以创建自定义的数处理组件,以满足特定业务需求。
  • 自定义扩展机制:LiteFlow 提供丰富的扩展机制,例如自定义节、自定义流程定义、自定义数据处理等等。这使得你可以根据需要扩展 LiteFlow 的功能,以满足特定业务需求。

总结陈词

LiteFlow 的自定义组件功能使得它在低代码开发中非常灵活和强大。你可以根据需要创建自定义节点、流程定义和数据处理组,以满足特定业务需求,这使得 LiteFlow 成为构建复杂业务流程的理想选择。

还是那句话,你可以不选择它,但必须了解它。

此篇文章仅作为入门篇章,后续会持续补充实战用法。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com