java activiti 工作流引擎_Activiti工作流引擎简介详解

java activiti 工作流引擎_Activiti工作流引擎简介详解Activiti工作流引擎简介一、概述Activiti是由Alfresco软件在2010年5月17日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理,工作流,服务协作等领域的一个开源,灵活的,易扩展的可执行流程语言框架。Activiti基于Apache许可的开源BPM平台,创始人TomBaeyens是JBossJBPM的项目架构师,它的特色是提供了eclipse插件,开发人员可以通过插…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Activiti工作流引擎简介

一、概述

Activiti是由Alfresco软件在2010年5月17日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理,工作流,服务协作等领域的一个开源,灵活的,易扩展的可执行流程语言框架。

Activiti基于Apache许可的开源BPM平台,创始人Tom Baeyens是JBoss JBPM的项目架构师,它的特色是提供了eclipse插件,开发人员可以通过插件直接绘画出业务流程图。

工作流引擎:

ProcessEngine对象,这是Activiti工作的核心。负责生成流程运行时的各种实例及数据,监控和管理流程的运行。

BPMN标准:

业务流程建模与标注(Business Process Model and Notation,BPMN),描述流程的基本符号,

包括这些图元如何组合成一个业务流程图  (Business Process Diagram)。

二、开发环境

Activiti软件环境:

JDK1.6或者更高版本

支持的数据库有:h2,mysql,oracle,mysql,db2等

支持Activiti运行的jar包,可以通过maven依赖引入

开发环境为Eclipse3.7或者以上版本,myeclipse为8.6版本

三、Activiti表说明

1,流程部署相关表:

act_re_deployement 部署对象表

act_rep_procdef 流程定义表

act_ge_bytearray 资源文件表

act_ge_prperty 主键生成策略表(对于部署对象表的主键ID)

2,流程实例相关表:

act_ru_execution 正在执行的执行对象表(包含执行对象ID和流程实例ID,如果有多个线程可能流程实例ID不一样)

act_hi_procinst 流程实例历史表

act_hi_actinst 存放历史所有完成的任务

3,Task 任务相关表:

act_ru_task 代办任务表(只对应节点是UserTask的)

act_hi_taskinst 代办任务历史表 (只对应节点是UserTask的)

act_hi_actinst  所有节点活动历史表 (对应流程的所有节点的活动历史,从开始节点一直到结束节点中间的所有节点的活动都会被记录)

4,流程变量表:

act_ru_variable 正在执行的流程变量表

act_hi_variable 流程变量历史表

四、核心API

1,ProcessEngine

说明:Activiti中最核心的类,其他的类都是由他而来。

//用法

ProcessEngine processEngine =ProcessEngines.getDefaultProcessEngine();//例如:生成RepositoryService(管理流程定义 )

RepositoryService

repositoryService=processEngine.getRepositoryService();//例如:生成RuntimeService (执行管理,包括启动,推进,删除流程实例 等操作)

RuntimeService

runtimeService=processEngine.getRuntimeService();//例如:生成TaskService(任务管理)

TaskService

taskService=processEngine.getTaskService();

2,RepositoryService

说明:Activiti的仓库服务类。所谓的仓库指流程定义文档的两个文件:bpmn文件和流程图片 该service可以用来删除部署的流程定义

3,RuntimeService

说明:Activiti的流程执行服务类,可以从这个服务类中获取很多关于流程执行的相关的信息。

4,TaskService

说明:是Activiti的任务服务类。可以从这个类中获取任务的相关信息,如当前正在执行的个人待办和用户组待办任务。

5,HistoryService

说明:Activiti的查询历史信息的类,在一个流程执行完成后,这个对象为我们提供查询历史信息,可以跟踪流程实例对应所有待办节点的运行情况。

6,ProcessDefinition

说明:流程定义类,可以从这里获得资源文件等。

7,ProcessInstance

说明:代表流程定义的执行实例,当一个部署的流程图启动后,该流程只有一条流程实例数据,但是它的流程任务可以有多个,

每个任务对应流程图中相应的流程节点。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/157614.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 一篇文章读懂企业如何升级到云安全体系

    一篇文章读懂企业如何升级到云安全体系

  • 双目测距理论及其python实现

    双目测距理论及其python实现一、双目测距基本流程双目测距属于双目SLAM的一个应用领域。关于双目测距的基本原理,其实并不复杂,但说起来内容也不少,其核心原理就是三角测量,三角测量在土地测量、天文测量等领域都得到了广泛应用,是一种很好的测距方法。为了对双目测距的内容有一个很好的认识大家可以先看一下这个博客,讲的挺的不错的:https://blog.csdn.net/piaoxuezhong/article…

  • 【mybatis系列】自定义实现拦截器插件Interceptor

    【mybatis系列】自定义实现拦截器插件Interceptor目录类型规则介绍intercept(Invocationinvocation)plugin(Objecttarget)setProperties(Propertiesproperties)实战首先熟悉一下Mybatis的执行过程,如下图:拦截器应用场景:类型先说明Mybatis中可以被拦截的类型具体有以下四种:1.Executor:拦截执行器的方法。2.ParameterHandler:拦截参数的处理。3.ResultHandler:拦截结果集的处理。4.StatementHandl

    2022年10月25日
  • 高德地图获取shp文件_手机高德地图坐标拾取

    高德地图获取shp文件_手机高德地图坐标拾取转载自:http://blog.csdn.net/yukimineryuu/article/details/50933582用Eclipse获取sha1值比较简单。最近自己换了androidstudio开发,申请key的时候,要两个版本的sha1值。一个是开发版(debug),一个是发布版(release)。debug版本的sha1比较好获取,网上有介绍,这里

  • 什么是用户态和内核态_进程的用户态和内核态

    什么是用户态和内核态_进程的用户态和内核态要了解什么是用户态,什么是内核态,我们需要先了解什么是进程的用户空间和内核空间:Linux虚拟内存的大小为2^32(在32位的x86机器上),内核将这4G字节的空间分为两部分。最高的1G字节(从虚地址0xC0000000到0xFFFFFFFF)供内核使用,称为“内核空间”。而较低的3G字节(从虚地址0x00000000到0xBFFFFFFF),供各个进程使用,称为“用户空间”。也就是说,在这4G的…

  • 理解VUE响应式原理[通俗易懂]

    理解VUE响应式原理[通俗易懂]1、响应式原理基础响应式原理基础是基于Object.defineProperty(obj,prop,descriptor),descriptor里面可以定义get和set方法,可以在获取属性值事触发get方法(可以收集依赖),设置属性值时触发set方法(更新依赖)。扩展:上面是vue2.0的基础原理,vue3.0的基础原理是:2、核心对象:Dep与WatcherDep:vue在data里申明的每一个属性都会生成一个Dep的实例对象,De…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号