一、流程设计工具“双雄”——Activiti Designer vs Modeler
1. Activiti Designer(Eclipse插件)
- 定位:面向开发者的IDE集成工具,适合代码与流程同步调试。
- 核心功能:
- 拖拽式BPMN元素设计
- 流程图与Java代码双向关联
- 本地调试与部署
2. Activiti Modeler(网页版)
- 定位:面向业务人员的在线设计器,适合跨团队协作。
- 核心功能:
- 浏览器直接访问,无需安装
- 流程版本管理与共享
- 表单设计集成
选型口诀🔍:
- 开发调试用Designer,业务协作用Modeler!
二、安装Designer插件——Eclipse的“流程画笔”
1. 通过Eclipse Marketplace安装
- 打开Eclipse → Help → Eclipse Marketplace
- 搜索“Activiti BPMN 2.0 Designer” → 安装并重启IDE
2. 验证安装成功
- 新建文件 → 选择BPMN 2.0 File → 看到图形化设计界面即成功!
(Designer插件安装成功界面)
三、设计第一个流程图——请假流程“三步成图”
1. 创建BPMN文件
- 右键项目 → New → Other → Activiti → BPMN 2.0 File
- 输入文件名
leave-process.bpmn
2. 拖拽元素搭建流程
步骤 | 操作 |
---|---|
1. 开始事件 | 从工具栏拖拽Start Event到画布 |
2. 用户任务 | 添加User Task,命名为“提交请假申请” |
3. 排他网关 | 拖拽Exclusive Gateway,设置条件分支 |
4. 结束事件 | 添加End Event完成流程 |
连线技巧:
- 点击元素边缘 → 拖动鼠标到目标元素 → 自动生成连接线
- 右键连线 → Edit Condition设置条件表达式(如
${days > 3}
)
四、配置任务属性——“流程图说明书”
1. 设置任务处理人
- 双击“提交请假申请”任务 → 打开属性面板
- 在Assignee字段填写
${applicant}
(动态变量)
2. 定义表单字段
- 在Form Properties中添加字段:
- 名称:
days
,类型:long
(请假天数) - 名称:
reason
,类型:string
(请假理由)
- 名称:
(任务属性配置界面)
五、导出与部署——让流程图“活起来”
1. 导出BPMN文件
- 右键流程图 → Export → Activiti → BPMN 2.0 XML File
- 保存到
src/main/resources/processes
目录
2. 代码部署流程图
RepositoryService repositoryService = processEngine.getRepositoryService();
Deployment deployment = repositoryService.createDeployment()
.addClasspathResource("processes/leave-process.bpmn")
.deploy();
System.out.println("流程部署ID:" + deployment.getId());
六、避坑指南——设计工具的“隐藏关卡”
1. 元素对齐问题
症状:连线歪斜,流程图不美观。
解法:使用Alignment Toolbar(对齐工具)一键对齐元素。
2. 条件表达式报错
症状:部署时报错Unknown property 'days'
。
检查项:
- 流程变量名是否与表达式中的
${days}
一致 - 变量是否在启动流程时传入
七、课后挑战——巩固你的“画家技能”
-
选择题:在Designer中,如何设置任务处理人为动态变量?
A. 在Assignee字段写固定值
B. 在Assignee字段写${variable}
C. 在代码中硬编码 -
实战题:设计一个报销流程,包含“提交报销→经理审批→财务打款”三个任务,并导出部署。