目录
一、什么是LiteFlow
LiteFlow是一个轻量且强大的国产规则引擎框架,可用于复杂的组件化业务的编排领域,独有的DSL规则驱动整个复杂业务,并可实现平滑刷新热部署,支持多种脚本语言规则的嵌入。帮助系统变得更加丝滑且灵活。
二、SpringBoot集成LiteFlow
步骤一:引入maven依赖
<dependency>
<groupId>com.yomahub</groupId>
<artifactId>liteflow-spring-boot-starter</artifactId>
<version>2.9.2</version>
</dependency>
步骤二:定义组件
在引入jar包之后,需要定义一些组件并使SpringBoot能够扫描到他且注册进上下文中。
@Component
@LiteflowComponent(value = "AddDailyCmp", name = "添加日报")
public class AddDailyCmp extends NodeComponent {
@Resource
private DailyService dailyService;
@Override
public void process() throws Exception {
// 获取添加参数(分工id,人员id)
ProjectPlan param = this.getSlot().getRequestData();
Daily contextBean = this.getContextBean(Daily.class);
// 检查参数是否合法
你的业务 ......
}
}
步骤三:定义规则文件
<?xml version="1.0" encoding="UTF-8"?>
<flow>
<chain name="AddDailyCmp">
THEN(AddDailyCmp);
</chain>
</flow>
步骤四:添加配置文件
在application.yml或 application.properties中配置资源路径,如上图所示。
注意:
如果规则文件不是放在resources资源文件夹下,那么pom文件需要添加相应的资源配置,否则规则文件会找不到。
pom配置如下图所示:
步骤五:声明启动类
@SpringBootApplication
//把你定义的组件扫入Spring上下文中
@ComponentScan({"com.xxx.xxx.cmp"})
public class LiteflowExampleApplication {
public static void main(String[] args) {
SpringApplication.run(LiteflowExampleApplication.class, args);
}
}
好了,到现在LiteFlow就已经集成进SpringBoot项目中了,我们就可以开始使用他了! 另外,附上官方文档地址:🍤LiteFlow简介 | LiteFlow