开源工作流引擎flowable,开源工作流引擎平台

http://www.itjxue.com  2023-01-20 00:55  来源:未知  点击次数: 

工作流引擎flowable基于springboot下,命令模式实现源码分析

在init()方法里,有一大堆的初始化。有个方法initCommandExecutors();

方法initCommandExecutors里的内容如下

方法initCommandInterceptors里的getDefaultCommandInterceptors内容

创建了各种拦截器,也就是当执行某个命令时,会执行这些拦截器。(包括了日志、事务等拦截器)

例如当执行taskService.complete完成任务时,会被事务拦截器拦截,启动事务等其它功能,如果需要我们也可以自定义拦截器

方法initCommandExecutor里的内容如下

把各个拦截器命令串联起来

springboot 整合 flowable 流程引擎

?1. pom

parent

groupIdorg.springframework.boot/groupId

artifactIdspring-boot-starter-parent/artifactId

version2.5.2/version

relativePath / !-- lookup parent from repository --

/parent

properties

project.build.sourceEncodingUTF-8/project.build.sourceEncoding

project.reporting.outputEncodingUTF-8/project.reporting.outputEncoding

java.version1.8/java.version

shiro.version1.5.3/shiro.version

flowable.version6.6.0/flowable.version

maven-jar-plugin.version3.0.0/maven-jar-plugin.version

/properties

========================

!--flowable工作流依赖--

? ? ? ? dependency

? ? ? ? ? ? groupIdorg.flowable/groupId

? ? ? ? ? ? artifactIdflowable-spring-boot-starter/artifactId

? ? ? ? ? ? version${flowable.version}/version

? ? ? ? /dependency

!-- --

dependency

? ? groupIdorg.flowable/groupId

? ? artifactIdflowable-json-converter/artifactId

? ? version${flowable.version}/version

/dependency

!-- app 依赖 包含 rest,logic,conf --

dependency

? ? groupIdorg.flowable/groupId

? ? artifactIdflowable-ui-modeler-rest/artifactId

? ? version${flowable.version}/version

/dependency

dependency

? ? groupIdorg.flowable/groupId

? ? artifactIdflowable-ui-modeler-logic/artifactId

? ? version${flowable.version}/version

? ? exclusions

? ? ? ? exclusion

? ? ? ? ? ? groupIdorg.apache.logging.log4j/groupId

? ? ? ? ? ? artifactIdlog4j-slf4j-impl/artifactId

? ? ? ? /exclusion

? ? /exclusions

/dependency

dependency

? ? groupIdorg.flowable/groupId

? ? artifactIdflowable-ui-modeler-conf/artifactId

? ? version${flowable.version}/version

/dependency

2. 配置类

package org.fh.config;

import org.flowable.spring.SpringProcessEngineConfiguration;

import org.flowable.spring.boot.EngineConfigurationConfigurer;

import org.springframework.context.annotation.Configuration;

import org.springframework.stereotype.Controller;

/**

* 说明:Flowable配置

* from:fhadmin.cn

*/

@Controller

@Configuration

public class FlowableConfig implements EngineConfigurationConfigurerSpringProcessEngineConfiguration {

? ? @Override

? ? public void configure(SpringProcessEngineConfiguration engineConfiguration) {

? ? ? ? engineConfiguration.setActivityFontName("宋体");

? ? ? ? engineConfiguration.setLabelFontName("宋体");

? ? ? ? engineConfiguration.setAnnotationFontName("宋体");

? ? }

}

3. 配置文件?flowable.properties

blobType=BLOB

boolValue=TRUE

prefix=

工作流引擎哪家好?

分享一款JVS开源框架系列-流程引擎「含开源地址」

一、项目简介

JVS是面向软件开发团队可以快速实现应用的基础开发框架,采用微服务分布式框架,提供丰富的基础功能,集成众多业务引擎,它灵活性强,界面化配置对开发者友好,底层容器化构建,集合持续化构建。

项目仓库:

社区版已开源,在授权情况下支持100%源码同步,支持商用。

二、流程引擎介绍

流程引擎本质是解决业务流转过程中,带来的大量的重复的业务逻辑的,通过流程引擎可以缩减大量的业务开发成本,并提供一系列机制确保我们的业务的流畅度与准确性。

目前市面上流程引擎有比较多种:Osworkflow、JBPM、activiti、flowable、Camunda等这几种主流的方案,目前我采用的是可视化交互性更好的流程引擎,下面给大家简单介绍下:

1、新建了流程,设置好相关条件,点击设计流程

2、流程设计界面

3、流程设置

4、完成发布的流程可以直接在流程申请入口自动生成

5、配置任务节点与条件

6、支持配在线表单

7、跳转表单配置(单独详细介绍表单的配置)

三、 亮点与差异

相对业内其他方案,我们的表单引擎具备以下亮点:

青谷工作流系统是一套提供给集成商、软件开发商和最终客户的基础平台软件,它以流程管理和流程应用为核心,通过配置及二次开发,实现流程的自动化处理,系统由流程引擎、设计工具、管理工具和应用工具4 部分组成。流程引擎作为青谷工作流产品的核心组件,具备高内聚、松耦合等特性,并且内置大量接口,方便集成第三方系统。针对国内用户特点,青谷工作流引擎在业内率先提供多角度指定流程办理人、流程流向、办理方式、表单属性自动调整、多路并发、异步流转等多种流程操作手段等功能,充分满足用户实际业务需求。更多功能等您来发现!

雀书的工作流引擎很不错。可以自定义表单,有关联表;可视化流程图编辑器;节点权限控制;规则引擎;自动化引擎;

天翎的工作流引擎就很棒啊!!

从审批路径控制-审批人员控制-批对象权限控制-审批时限控制-批动作控制-审批网关控制-审批通知控制

无死角工作流

来,

看看下面简单的介绍:

审批路径控制

图形化箭头指向,真实模拟流程流转路径;指哪打哪,无论前进还是回退,进入送出均可 条件校验。

审批人员控制

可从组织机构、角色库、页面数据、流程变量和规则脚本等获取审批人;可通过维度内外部多因素单独或联动关系筛选审批人。

批对象权限控制

可对表单字段及操作按钮权限进行详实控制;可按业务规则提供只读、隐藏和修改等权限 设置。

审批时限控制

严格控制审批时限,超时可自动提交或触发指定动作;提供设计模式和脚本模式双重控制机制。

批动作控制

支持单人办理、多人顺序、多人并行、抢占式办理、内部循环、人工合并等处理场景;

除常规操作,主办加签、会办加签、补签意 见、异步提交、指定回退、自由指派、节点

排序、节点互斥、子流程单实例等中式流程操作应有尽有。

审批网关控制

不管是常规流程还是流程嵌套,不管是往前流转还是往后回退都详实控制;到达(聚合、非聚合)、通过(或、且、非)和送出(并行、串行)各个节点严格把关。

审批通知控制

提供待办、已办、抄送等通知窗口,轻松获取发起人、业务名称和关键字段等流程摘要;通知方式灵活多样,包括站内消息中心、邮 件、短信、微信、APP等。

你可以看看这个IBM Business Automation Workflow,下面的文档你可以深入了解一下。

没遇到好用的,看基于什么业务场景

activiti和flowable用哪个会比较好

activiti和Flowable各有其特色、优势,具体哪个会更好需要结合实际情况来决定,不能一概而论。

Activiti有非常大的影响力来改变目前BPM的生态。Activiti的Apache授权,完整的功能,将使Activiti到达一个新的水平。Activiti将推动业界的创新,因为BPM技术可以广泛而自由地被应用。通过实现这些想法以及开源社区的努力,也让Activiti成为事实上的 BPM和BPMN标准执行。

Flowable支持BPMN和CMMN、DMN规范、它的主要含有五个引擎和一个官方自带的Modeler流程设计器,以及一套数据库表,以及发布版本(5个war)/源代码等。

扩展资料:

flowable的表不需要自己创建,只要在spring boot配置好数据库连接相关配置,它会自动创建70张表,但不包含流程设计器所需要的表,这些表是以act_de_*开头。需要自己搞去配置让它自己生成,或者从它的war生成的库中去导入。

Activiti将成为Alfresco的默认的业务流程引擎,Alfresco公司将继续支持jBPM,以及目前与其他业务流程的企业内容管理软件集成的引擎。 Alfresco公司也将与Alfresco企业版一起,提供对Activiti的支持,维护和技术保证。

参考资料来源:

百度百科-activiti

(责任编辑:IT教学网)

更多

推荐服务器空间文章