第三章 activiti “流程图设计工坊”

一、流程设计工具“双雄”——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}一致
  • 变量是否在启动流程时传入

七、课后挑战——巩固你的“画家技能”

  1. 选择题:在Designer中,如何设置任务处理人为动态变量?
    A. 在Assignee字段写固定值
    B. 在Assignee字段写${variable}
    C. 在代码中硬编码

  2. 实战题:设计一个报销流程,包含“提交报销→经理审批→财务打款”三个任务,并导出部署。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值