问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Flowable工作流入门看这篇就够了

发布网友 发布时间:2024-10-02 00:25

我来回答

1个回答

热心网友 时间:2024-10-14 23:55

大家好,我是沙师弟,一名热爱探索和分享的程序员。

多年的程序员生涯让我对工作流有了深入了解。Java语言支持的工作流选择众多,从早期的JBPM到现在的Activiti、Camunda、Flowable等,都是常见的开源产品。

许多公司会选择开源产品进行个性化开发,以节省成本。今天我将为大家介绍Flowable,解决如何入手的问题。

Flowable基于Apache V2 license协议开源,支持BPMN 2.0行业标准。让我们用三十分钟的时间,了解Flowable的安装、建表、设计器、API等常见问题。

0. 安装须知:本文基于Spring Boot集成方式进行介绍

官方网址:flowable.com/

Github:github.com/flowable/

开源协议Apache-2.0

基础软件及版本:1. Maven

创建Spring Boot项目,pom中加入依赖

1.1 建表

1.1.1 MySQL:由于需要支持TIMESTAMP (6) 类型,5.6.4及以下版本无法使用,5.7或8.0安装成功。两种初始化建表方式:sql脚本,或是boot自动。

按以下方法启动Spring Boot项目,可自动建表:建表时,连接串需要&nullCatalogMeansCurrent=true。建表后可关闭,下次启动不会再次建表。默认会启动liquibase,可关闭。

1.1.2 Oracle等其他数据库:据多个朋友反馈,Oracle建库可能出现建表语句不全的问题,推荐大家从github下载发布包,执行内部的建表语句,包括mysql也可以采用这种方式。

下载地址:github.com/flowable/flo...

下载后,执行里面的database脚本即可。初次使用,可以选择create - all的脚本执行。常用的db2、mssql、mysql、oracle、postgresql都有,还有一个奇怪的h2混了进来。

h2是演示版系统默认的库,但我没实际用过。

1.1.3 国产数据库:默认情况下不支持国产脚本,经测试达梦可以成功使用,需要人工按照Oracle的库表调整。

2. 设计器:各大开源流程工具都遵从BPM标准,一般流程设计都是以BPM格式的XML文件进行定义。但我们不可能去手写配置文件,一般都借助于可视化设计器。

官方给的Web设计器大致分两个版本,需要自行部署到Tomcat运行,并且需要连接到前面建的数据库。

2.1 Flowable 6.5版本以前的:6.5版本的方法仅供参考,本文使用2.2的设计器。

2.2 Flowable 6.6版本以后的:推荐使用。官网下载,只有2个包。

访问地址:http://localhost:8080/flowable-rest/docs/ (login/password: rest-admin/test)

http://localhost:8080/flowable-ui (login/password: admin/test)

修改数据源:打开/WEB-INF/classes/flowable-default.properties,搜索spring.datasource相关配置,改为步骤1中的数据库地址即可。

2.3 Eclipse设计器插件:Eclipse设计器属于离线设计器,无需连库,成果以xml文件方式保存,可以通过发布程序发送至流程引擎。

安装步骤:

2.4 设计器说明:2.4.1 启动事件、2.4.2 结束事件、2.4.3 用户任务、2.4.4 服务任务、2.4.5 脚本任务、2.4.6 排他网关、2.4.7 并行网关、2.4.8 包容网关

3. 表说明:自动生成的表中,有很多是支持流程设计器的表,真正流程运行所需的表并没有那么多。

3.1 ACT_RE_*、3.2 ACT_RU_*、3.3 ACT_ID_*、3.4 ACT_HI_*、3.5 ACT_GE_*

4. 自定义表单:内置自定义表单功能,可以实现一些简单的表单定义,但真正业务开展时,很难对复杂多变的情况进行支撑,不建议使用。

5. 流程版本:流程定义文件是xml格式,交由流程引擎的ProcessDefinition服务进行发布。

6. API:引擎API是与Flowable交互的最常用手段。总入口点是ProcessEngine。

6.1 ProcessEngines、6.2 RepositoryService、6.3 TaskService、6.4 IdentityService、6.5 FormService、6.6 HistoryService、6.7 ManagementService、6.8 DynamicBpmnService

7. 设计器整合:在开发自己的系统时,整合工作流,我们往往需要程序里提供一个菜单,实现流程的可视化配置、拖拽、保存、版本管理等工作,利用官方的设计器,我们可以快速构造一个独立的Spring Boot工程,提供设计器界面,通过Url集成的方式加入我们的项目当中。

8. 汉化:使用中,会遇到设计器汉化不完整的情况,可以在改造项目中,自行创建目录 resource/static/modeler/i18n/zh-CN.json,进行汉化。

以上就是对Flowable工作流的简单介绍,希望大家能顺利使用。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
vivo y18l 死机卡在开机界面 vivoy18l手机频繁黑屏死机怎么办? vivo y18l 死机了怎么办 vivoY18l黑屏死机解决办法 vivo y18l刷机很久都开不了机怎么? 湖北自考专升本会有学籍吗? 湖北自考专升本后可以考研吗 湖北自考申请毕业证的时间在什么时候 湖北自考专升本学历怎么查询 湖北自考专升本为什么没有学籍 Java开发规范:关于提高开发体验的分享记录 Camunda流程引擎常用API接口介绍 MyApps功能介绍——表单引擎 魅族m8充电充满了,可以不拔掉充电器么??? 魅族充电器长时间插在电源上有害处吗? 魅族M8 用充电器给手机充电 背壳好烫 用手机查看了下信息 电池温度39度... 按揭贷款10万贷十年月供是多少 明年7月起第三方支付交易必须走银联通道? 1970年我国成功发射第一颗人造地球卫星《》 外贸企业是什么意思? 做外贸需要看什么课吗?青岛麦总出海张宁Mike的外贸实战训练营可以... 外贸精英是什么意思? 外贸增三退三什么意思 新农合大病保险怎么报销? 学前端去哪个培训机构 doing,fu,he,kung,likes.连词成句,请学霸们教我吧 any,can,kung fu,do,zhang peng,not连词成句 问题:怎么才能清除掉手机屏幕保护膜贴在手机屏幕的粘粘... can she kung fu do连词成句 any.i.kung.fu.do.can't(.)连词成句 心脑舒通胶囊成分鉴别 消糖灵胶囊鉴别 和胃止痛胶囊【鉴别】 肝欣泰注射液鉴别 明党参鉴别 青霉胺的鉴别 黑莓直接手机上网安装软件 黑莓手机怎么直接用电话下载软件,并能安装使用 有没有黑莓手机可以直接下载软件的wep网站? 全自动洗衣机三个盒子分别装什么 ios开发者选项在哪里 万龙第十城配套信息 ...把别人的车撞坏了,没有人员伤亡,但是车撞倒很严重,在赔偿范围内吗... 用盐水洗鼻的方法清洗鼻腔效果怎么样 你知道哪些竹荪的创意吃法? 玉米是一年四季都有吗 酒精肝症酒精肝的形成原因是什么 乙肝并发症酒精肝的形成原因是什么 姻缘《姻缘》长着翅膀的大灰狼 肺癌分为几种类型