CabloyJS自带工作流引擎的文档清单
文档清单
CabloyJS自带工作流引擎文档已经整理出来,欢迎大家围观、拍砖
- 介绍
- 流程定义
- 流程实例
- 转移线
- 活动节点
- 用户任务
- 进阶篇(待续...)
什么是CabloyJS自带工作流引擎
众所周知,NodeJS作为后端开发语言和运行环境,样样都好,就差一个NodeJS工作流引擎。CabloyJS 4.0重点开发了NodeJS工作流引擎,并作为内置的基础核心模块,近一步拓展了NodeJS在后端的应用场景,为深入研发各类商业业务逻辑,提供了基础支撑
NodeJS工作流引擎的特点
- 更简便的配置:采用
JSON进行流程定义的配置,告别XML配置文件的冗杂 - 流程定义:支持历史版本、支持启用/禁用
- 更清晰的架构:采用三个核心模块用分层的机制实现工作流引擎的架构,让工作流不再神秘,源码也不再叠床架屋
| 模块名称 | 说明 |
|---|---|
| a-flow | 流程定义、流程实例 |
| a-flownode | 流程节点(活动节点) |
| a-flowtask | 流程任务 |
- 支持
业务流程和审批流程 - 与
原子数据生命周期结合,内置了一套基于原子数据的审批工作流。参见:原子阶段(数据生命周期) - 与
表单验证结合,支持分别配置不同流程节点的读取字段权限和修改字段权限。参见:表单验证 - 可通过
AOP机制定制工作流逻辑。参见:AOP - 可通过
Listener机制定制工作流逻辑。参见:listener规范 - 开放式的架构,支持更多
流程节点的定制开发 - 包含大量
测试驱动代码,可快速上手使用工作流
与Activiti的对比
流程定义是工作流引擎的灵魂,一个合理的流程定义规范,既要考虑使用的便利性,又要考虑功能特性的可扩展性
Activiti无疑是Java语言领域工作流引擎的标杆,依据BPMN2.0规范采用XML格式来定义工作流
1. JAVA + BPMN + XML
BPMN + XML的优点是标准统一,与JAVA语言的开发调性相匹配。当然,缺点是繁琐,如果脱离了图形化编辑工具,采用手写XML定义,非常不便利
2. JS + 类BPMN + JSON
CabloyJS经过反复的评估与权衡,决定仍然参考BPMN规范的特性集,但是采用JSON格式进行定义。虽然属于自定义格式,但符合JS语言的调性,优点是简约、易写、易读,同样具备优秀的可迁移性
相关链接
CabloyJS自带工作流引擎的文档清单的更多相关文章
- 分享一款自带工作流引擎的NodeJS全栈框架,接单快手、创业神器
CabloyJS是什么 CabloyJS是一款自带工作流引擎的Node.js全栈框架, 接单快手.创业神器, 基于koa + egg + vue + framework7 + mysql 在线演示 场 ...
- freemarker导出带图片的word文档
最近做一个关于文档导出功能, 顺便学习了下freemarker,做了个关于导出带图片的word文档,模板并没有写全,只是验证代码的正确性 这只是做一个小功能,故只做了后台代码关于导出的代码,并未与前台 ...
- flexpaper上传带中文名字的文档,在页面显示若出现404错误时,请在server.xml文件中进行编码utf-8
flexpaper上传带中文名字的文档,在页面显示若出现404错误时,请在server.xml文件中进行编码utf-8
- CabloyJS也有工作流引擎了,是你想要的吗?
前言 众所周知,NodeJS作为后端开发语言和运行环境,样样都好,就差一个NodeJS工作流引擎.CabloyJS 4.0重点开发了NodeJS工作流引擎,并作为内置的基础核心模块,近一步拓展了Nod ...
- Jade(Pug) 模板引擎使用文档
本篇内容 在 Express 中调用 jade 模板引擎 jade 变量调用 if 判断 循环 Case 选择 在模板中调用其他语言 可重用的 jade 块 (Mixins) 模板包含 (Includ ...
- 项目实践之工作流引擎基本文档!Activiti工作流框架中流程引擎API和服务详解
流程引擎的API和服务 流程引擎API(ProcessEngine API)是与Activiti打交道的最常用方式 Activiti从ProcessEngine开始.在ProcessEngine中,可 ...
- Java Web用Freemarker生成带图片的Word文档
步骤一:模板制作 用world2003做一个导出模板,如果有图片则加入一张图片占位,将world另存为xml,将xml中需要导出的内容用Freemarker标签表示,最后另存为.ftl结尾的模板: 步 ...
- PHPcms编辑器如何粘贴带格式的word文档
在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...
- 看看CabloyJS工作流引擎是如何实现Activiti边界事件的
CabloyJS内置工作流引擎的基本介绍 1. 由来 众所周知,NodeJS作为后端开发语言和运行环境,支持高并发.开发效率高,有口皆碑,但是大多用于数据CRUD管理.中间层聚合和中间层代理等工具场景 ...
随机推荐
- 学生管理系统 C++课设
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<iostream> u ...
- SpringBoot内外部配置文件加载和优先级
直接附链接:https://www.pianshen.com/article/28711537583/
- 获取ul中li的value值
<script> $(function(){ $(".month-list").find("li").click(function(){ var t ...
- GRPC-go版本
GRPC-go版本 1.安装GO,protobuf 只适合有梯子的 GO的安装没必要说了 protobuf :https://github.com/protocolbuffers/protobuf/r ...
- Cf #709 Div. 2 B. Restore Modulo 一个只有三千多人过的b题, 妙啊!
传送门: https://codeforces.com/contest/1484/problem/B 原题 Example input 6 6 1 9 17 6 14 3 3 4 2 2 3 7 3 ...
- CentOS 下 MySQL 服务搭建
1. 卸载旧 MySQL 查看 rpm 包 rpm-qa | grep mysql 如果存在,使用如下命令卸载 rpm -e 查找是否存在mysql 相关目录 find / -name mysql 卸 ...
- SQL Server 2019 异常服务没有及时响应启动或控制请求
安装到最后一步时发生了如下错误 解决办法: 1.使用管理员打开cmd窗口,输入以下命令 net localgroup administrators "NETWORK SERVICE" ...
- OSPF MTU问题
OSFP(开放式最短路径优先)链路状态协议,IGP 1.mtu 检测 链路俩段不匹配 假设双方的mtu不一致时 ospf建立如下: R1与R2交互hello报文,其中包含:目的IP地址:224.0.0 ...
- OpenHarmony 3.1 Beta版本关键特性解析——分布式DeviceProfile
(以下内容来自开发者分享,不代表 OpenHarmony 项目群工作委员会观点) 成翔 OpenAtom OpenHarmony(以下简称"OpenHarmony")作为分布式操作 ...
- nacos 详细介绍(一)
一.Nacos介绍 Nacos是SpringCloudAlibaba架构中最重要的组件. Nacos 是一个更易于帮助构建云原生应用的动态服务发现.配置和服务管理平台,提供注册中心.配置中心和动态 D ...