前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java activiti 工作流引擎_Activiti工作流引擎简介详解

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

作者头像
全栈程序员站长
发布2022-09-18 16:55:10
9860
发布2022-09-18 16:55:10
举报

大家好,又见面了,我是你们的朋友全栈君。

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

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

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档