专业的JAVA编程教程与资源

网站首页 > java教程 正文

如何实现工作流?有完整的项目案例

temp10 2024-10-27 14:42:39 java教程 10 ℃ 0 评论

序言

说起工作流,大多数没有接触过的同学或者刚接触的同学,是一头雾水,不知道如何学习、实战,看了一圈文档,引起了一堆疑问,感觉工作流太复杂了。

我之前也在微头条中聊过,什么是工作流,无非就是做一件事情不同角色参与,一起把这个事情完成,这个流程称为工作流

如何实现工作流?有完整的项目案例

如何实现

[what]思考:不借用现有框架,你是如何实现

?[酷]思路:

  • 需要创建一个工作流的流程模型,每一步都要关联一个人或是多人去参与,最后要把这个流程模型图以二进制的方式保存下来
  • 再创建一个工作表单,说明我要干什么,然后关联这个工作流模型图,这就组成一个完成流程模型
  • 根据流程模型,发起流程,操作流程,完结流程

想到这,大家可能有点晕头转向,这需要多少开发量,还要考虑很多的边界条件。如果你想到了以上几个方面,说明你已经打开了工作流的大门,了解工作流的业务逻辑,之后,学习工作流框架,会更加容易上手。

项目方案参考

https://github.com/CollectBugs/RuoYi-Flowable-Plus



  • 介绍

这个项目很好的借用flowable工作流框架实现工作流功能

  • 在线流程设计器
  • 在线流程表单设计器
  • 单节点配置表单
  • 多实例会签任务
  • 任务节点配置任务/执行监听器
  • 动态配置任务候选人
  • 其它流程相关功能点

其他实现方案

  • https://github.com/zc-libre/snakerflow-spring-boot-stater

Snaker是一个基于Java的轻量级工作流引擎,适用于企业应用中常见的业务流程。本着轻量、简单、灵巧理念设计,定位于简单集成,多环境支持。

  • https://github.com/Activiti/Activiti

Activiti 是一个轻量级工作流程和业务流程管理 (BPM) 平台,面向业务人员、开发人员和系统管理员。其核心是一个超快且坚如磐石的 Java BPMN 2 流程引擎。它是开源的,并根据 Apache 许可证分发。Activiti 可以在任何 Java 应用程序、服务器、集群或云中运行。它与 Spring 完美集成,非常轻量级并且基于简单的概念。

  • https://github.com/camunda/camunda-bpm-platform

Camunda Platform 7 是一个灵活的工作流程和流程自动化框架。其核心是在 Java 虚拟机内运行的原生 BPMN 2.0 流程引擎。它可以嵌入到任何 Java 应用程序和任何运行时容器中。它与 Java EE 6 集成,并且与 Spring 框架完美匹配。在流程引擎之上,您可以从一系列工具中进行选择,用于人工工作流程管理、操作和监控

总结

对于项目案例,大家可以本地部署一下,操作一下整个工作流过程,再根据代码与库表,更加深入去了解,学习。有什么问题,都可以联系我,提供友情技术支持

每天不断更,精彩不停止,明天见,我是行者

创作不易,记得留个关注、点赞、评论哟,让我们一起去看星辰大海,品味代码人生

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表