网站首页 > 博客文章 正文
在之前的分享中,我们介绍了一个流程引擎框架LiteFlow,这篇分享,主要是来介绍关于LiteFlow流程引擎框架如何去使用。
如何在Spring Boot项目中引入LiteFlow?
第一步、引入POM文件依赖
最新推出的版本就是2.11.0的版本,这里我们引入的也是这个最新版本。
<dependency>
<groupId>com.yomahub</groupId>
<artifactId>liteflow-spring-boot-starter</artifactId>
<version>2.11.0</version>
</dependency>
第二步、编写流程组件
这里,我们按照顺序创建了三个基础组件,来测试相关的流程。
@Component("a")
public class ACmp extends NodeComponent {
@Override
public void process() {
//do your business
System.out.println("执行了A");
}
}
@Component("b")
public class BCmp extends NodeComponent {
@Override
public void process() {
//do your business
System.out.println("执行了B");
}
}
@Component("c")
public class CCmp extends NodeComponent {
@Override
public void process() {
//do your business
System.out.println("执行了C");
}
}
第三步、编写流程配置文件
在resource路径下创建一个config的目录,然后在目录中添加如下的XML配置文件。
<?xml version="1.0" encoding="UTF-8"?>
<flow>
<nodes>
<node id="a" class="com.example.demo.component.ACmp"/>
<node id="b" class="com.example.demo.component.BCmp"/>
<node id="c" class="com.example.demo.component.CCmp"/>
</nodes>
<chain name="chain1">
THEN(
a, b, c
);
</chain>
</flow>
这里推荐安装一个LiteFlowX的插件,如下图所示。
第四步、添加配置文件
在Spring Boot的Yml配置文件中,添加如下的配置项。
liteflow:
#规则文件路径
rule-source: config/flow.el.xml
第五步、引入流程
在配置文件中添加如下的配置,用来引入chain1流程,并且编写一个测试流程控制类,方便调用流程显示内容。
@Component
public class FlowConfig {
@Resource
private FlowExecutor flowExecutor;
public void testConfig(){
LiteflowResponse response = flowExecutor.execute2Resp("chain1", "arg");
}
}
@RestController
public class TestController {
@Autowired
private FlowConfig yourClass;
@GetMapping("/test")
public String test(){
yourClass.testConfig();
return "";
}
}
第六步、启动项目进行测试
操作完成之后,启动项目然后调用http://localhost:8080/test接口,这个时候会看到控制台中有如下的输出,这个时候就表示该流程已经配置成功了。当然在flow配置文件中,我们只配置了一个chain1流程操作,我们也可以配置新的流程内容。
总结
到这里,整个的基础流程配置就算开发完成了,会看到,确实不需要再去编写各种的条件判断语句了,并且这个流程引擎在使用起来要比其他的流程引擎更加轻量级。但是它也有它的弊端,就是在配置一些复杂流程的时候,可能无法与Activities等流程引擎相提并论。
猜你喜欢
- 2024-12-30 IF嵌套层数太多?试试Drools规则引擎
- 2024-12-30 低代码开发重要工具:jvs-logic(逻辑引擎)基础原理与功能架构
- 2024-12-30 Java逻辑引擎服务编排,零代码低成本解决企业复杂业务需求
- 2024-12-30 JVS开源框架系列:多租户管理「含开源地址」
- 2024-12-30 开启灵活开发编码模式:规则引擎drools——基础语法
- 2024-12-30 Aviator规则引擎最佳实践 ilog规则引擎
- 2024-12-30 使用若依框架开发和部署简单应用的基本过程
- 2024-12-30 认识工作流程引擎 认识工作流程引擎教案
- 2024-12-30 开源规则引擎LiteFlow项目应用实践
- 2024-12-30 JAVA工作流「java工作流引擎框架」
你 发表评论:
欢迎- 最近发表
-
- 比GoPro 13更强的大疆Action 5 Pro,到底强在哪里?
- 信号和槽(信号和槽的实现原理)
- 在响应式项目中连接设计与开发(请简述实现响应式设计包括哪些技术点)
- 【C#】委托、Action、Func 和 Event 之间的关系
- 如何使用JavaScript实现Prompt弹窗?
- 谷歌Magic Actions功能曝光:AI革新安卓16通知交互
- 基于目标TPS的性能测试,如何通过手动设置场景进行测试?
- IOS基础学习之输出口和动作(io口输入输出实验总结及体会)
- 《Java语言程序设计》期末考试模拟试题——判断题和问答题
- Android学习之Touch事件的处理(android触摸事件实例)
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)