极简 Java 工作流概念入门
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
松哥目前正在制作名为 TienChin 的项目视频,该项目采用 Spring Boot 和 Vue3 技术栈,并涉及多种技术。他邀请大家加入,共同完成这个超过 90% 完成度的项目,并提供了配套视频教程。
关于 Flowable 工作流,松哥已经发布了多篇文章。为了帮助那些未曾接触过流程引擎的小伙伴,他决定再次梳理一些基础内容。
首先,松哥解释了为什么需要工作流。通过请假和报销审批的例子,他指出简单流程可能不需要工作流,但复杂流程(例如笔记本电脑的生产)则需要一种通用且易于维护的解决方案,即工作流。
松哥继续介绍了三大流程引擎:jBPM、Activiti 和 Camunda。jBPM 是由 Java 实现的企业级流程引擎,由 Tom Baeyens 创建,后来发展出了 Activiti。Activiti 后续又分出了 Camunda 和 Flowable。Activiti 现在侧重于云服务,Flowable 提供了丰富的功能和扩展点,而 Camunda 则是一个比较轻量级且提供编辑器的工作流引擎。
在讨论流程图时,松哥指出三种工作流都支持 BPMN(Business Process Model and Notation)标准。他解释了流程图的四个主要组成部分:事件、连线、任务和网关,并以笔记本电脑生产流程图为例,详细介绍了每个组成部分。
事件包括开始和结束事件、中间事件等。连线用来将各个组件连接起来。任务分为多种类型,主要分为用户任务和服务任务。活动是一种特殊的任务,可以调用子流程。网关则用于控制流程的分支和合并,有多种类型,如互斥网关、相容网关、事件网关和并行网关。
最后,松哥提到,理解这些基本概念后,再回过头去看之前的文章时,会有更深刻的理解,并列举了一些关于 Flowable 的教程文章。
想要了解更多内容?