Activiti常用类简介
Activiti项目是一项新的基于Apache许可的开源BPM平台,本文就来简述一下Activiti常用类。具体如下:
一、为什么要使用工作流
传统的设计在流程发生变化时的弊端:
1.流程相关的属性和业务对象的属性,都放到了业务对象中。
2.流程相关的逻辑和业务逻辑,都放到的业务逻辑中
Activiti常用类:
ProcessEngineConfiguration流程引擎配置对象(配置数据库连接信息和建表策略)
ProcessEngine流程引擎的核心对象(检查环境是否正确,管理各种服务)
RepositoryService仓库服务对象(管理部署信息)
RuntimeService运行时服务对象(管理流程的启动,流转等操作)
TaskService任务服务对象(Task表中的数据是Exeuction表的扩展,任务的创建时间和办理人)
部署相关类:
DeploymentBuilder发布配置对象(发布的规则文件、规则图片和流程显示的别名)
ProcessDefinition流程定义(用来描述发布流程的整体信息)
ActivityImpl流程活动(用来描述一个流程中每个活动相关的信息)
运行相关类:
Execution执行对象(用来描述当前活动节点的基本信息)
ProcessInstance流程实例对象(流程实例永远只想Execution(root)对象)
Task任务对象(任务创建时间和办理人)
二、使用案例:
流程部署信息管理:
1.发布流程
2.查看流程定义ProcessDefinitionQuery
3.删除流程
4.查看流程附件
流程执行管理:
1.启动流程
2.查看任务(私有/公有)
3.认领ClaimUserId和TaskId
4.办理任务complete(taskId)
5.查看任务状态