Activiti7使用

Acitviti7工作流引擎

视频地址:springboot2+Vue+shiro云管理系统项目实战_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

工作流引擎:

流程自动化配置。

工作流系统:具有工作流的系统。

如何以不变应万变?

​ -----activiti就可以实现业务流程变化后,程序代码不需要改变

适用行业:

使用场景及相关业务:

SaaS-人力资源管理系统 行政审批(调薪)

为什么activiti就可以解决业务需求变更时,源代码不需要更新,而是更新业务流程图?原理?

activiti最核心的工作流程

1、先将流程图画好

2、将流程图每个节点的数据读取并放入表中

3、读取表中的第一条记录,处理并删除

xml+dom4j+mysql+jdbc

流程实例

实现这个自动化

1、业务流程图要规范化,要遵守一套标准

2、这个业务流程图本质上是一个xml文件,这样就可以存入所要的数据。

3、读取业务流程图的过程就是解析xml文件的过程

4、读取一个业务流程图的结点就相当于是解析一个xml结构,进一步将数据插入到mysql表中,形成一条记录。

5、将所有的节点都读取并存入mysql表中

6、后面只要读取mysql表中的记录就可以了,读一条记录就相当于读一个结点

7、业务流程的推进,后边就转化为读表中数据,并且处理数据,结束时这一行数据就可以删除

BPM

BPM,即业务流程模型

流程建模使用BPMN软件,然后依赖activiti的引擎,解析完的数据放入mysql,有25张表

成本预算:公司开发软件的规模会去决定是否使用activiti。

SaaS-IHPM

1、整合Activiti

2、实现业务流程建模,使用BPMN实现业务流程图

3、部署业务流程到Activiti

4、启动流程实例

5、查询待办任务

6、处理待办任务

7、结束流程

下载activiti7

在idea里直接搜索下载。

activiti支持的数据库

需要的jar包:

总结

1、什么是工作流?

2、工作流,工作流系统,BPM,BPMN

3、流程定义 请假流程:填写请假单-----部门经理-----总经理-----财务经理

4、流程设计器:eclipse安装activiti Designer

​ idea中安装activities Designer

5、测试是否已经安装成功

6、为什么使用activiti可以实现业务代码不变更,就可以实现流程更新

流程定义图做更新—》先读取结点信息到数据库表中---->后续就针对数据库表进行操作

7、activiti支持的数据库有哪些?

8、25张表的创建,activiti要能够工作,就必须有表结构的支撑。

9、使用java代码方式生成25张表结构

​ (1)pom.xml文件需要引入activiti7开发相关的坐标

​ (2)log4j.properties日志文件添加

​ (3)activiti.cfg.xml默认配置文件,也可以是其他名字

​ 配置数据源

​ 创建processEngineConfiguration对象,使用脱机方式StandaloneProcessEngineConfiguration,

​ databaseSchemaUpdate

​ (4)写java代码

​ processEngineConfiguration类

​ ProcessEngine类

数据库命名规则

处未实现以下内容的运行结果。ActivitiTaskQuery.class

经分析:

可能原因:activiti中identitylink表没有写入内容,正常应该为:

解决办法: 已解决:原因是刚开始画流程图的时候没有写每个流程的谁来操作,少了一步

流程总结:

业务系统与Activiti整合开发的原理46

公司制度发生了变化:

1、原本还没有批完的流程怎么办?

30个人如何处理

2、xx员工个人还没有批完的流程怎么办?

视频47、48、挂起、激活流程实例(整个制度发生变化)

视频49、50单个实例挂起

businesskey关联业务系统的

activiti进阶

第二章 个人任务 53视频

2.1分配任务负责人

固定分配、表达式分配、监听器分配

54表达式分配(实际中用的较多)

UEL-value方式:$(assignee)程序代码中分配

UEL-method方式:$(holidayBean.getHolidayId0)

55、56assignee表达式方式具体操作 代码

57监听器分配

2.2查询任务

关联businesskey

代码:D:\WorkSpace\IDEA\springboot-activiti\src\main\java\com\wang\day03\activiti\BuinessKeyAdd.java

2.3办理任务

第三章 流程变量59

3.1、流程变量的类型60

3.2、流程变量作用域61

3.3、流程变量使用方法62

3.4、使用Global变量控制流程

63、64实际操作 holiday4.bpmn

启动流程时设置

65请假实体类

66请假流程定义的部署

目录:

设置global流程变量:

启动时设置:视频69、70 代码VariableTest

任务办理时设置:

视频71 代码VariableTest2

通过当前流程实例设置

视频72 代码VariableTest3

通过当前任务设置

视频73VariableTest4未实现

3.5、注意事项74

3.6、所操作数据库表

3.7、设置local流程变量76

任务办理时设置
通过当前任务设置

第四章 组任务77

4.1 Candidate-user 候选人

办理组任务
组任务办理流程

解决问题:为什么流程图复制之后修改了但是xml文件不会变?

用户查询组任务

代码D:\WorkSpace\IDEA\springboot-activiti\src\main\java\com\wang\day05\GroupTest.java

视频:80

用户拾取组任务

视频81 代码GroupTest

用户查询个人组任务

视频81 代码GroupTest

用户办理个人组任务

视频81 代码GroupTest

归还组任务

视频83

一行代码搞定

任务交接

视频84 代码GroupTest

数据库表操作

视频85

第五章 网关

视频86开始

5.1排他网关

代码D:\WorkSpace\IDEA\springboot-activiti\src\main\java\com\wang\day05\ExclusiveGateWayTest01.java 视频87定义 88流程图画法 89效果展示

在流程图里画一个排他网关。

当多个条件成立时,选择排他网关,排他网关选择在其中的一个。优先序号小的一个。

当多个条件都不成立时,排他网关就不可以了。

5.2并行网关

视频90 代码D:\WorkSpace\IDEA\springboot-activiti\src\main\java\com\wang\day05\ParallelGateWayTest.java

5.3包含网关

视频:93、94画流程图、95

代码:D:\WorkSpace\IDEA\springboot-activiti\src\main\java\com\wang\day05\InclusiveGateWayTest.java

测试:

课程总结96

以上所有代码的地址:D:\WorkSpace\IDEA\springboot-activiti

第一章Activiti与Spring整合开发97

整合开发流程

视频:97、98

代码:D:\WorkSpace\IDEA\activiti06

运行总结:

第二章 Activiti7现状分析

视频101

activiti7新的API

processRuntime

taskRuntime

第三章 springboot与activiti整合

视频105:环境准备

代码:D:\WorkSpace\IDEA\activitispringboot06

用户组的关系:

Assignee :直接设置任务执行人
Candidate-user:设置候选用户,格式:wangwu,zhangsan,zhaoliu
依然要指定具体的用户信息
Candiate-Groups:特点不需要知道具体的用户信息
只需要知道组名就可以

bpmn最好放到processes文件夹,会自动读取,简单快捷

springboot整合Junit方式测试新特性

未解决问题:activiti7与springboot结合后,原来的25张表少去了历史表?如何搞出来?

结合之后的流程图、流程部署、流程定义、 任务的查询、拾取、完成

视频:108、109、110

代码:D:\WorkSpace\IDEA\activitispringboot06\src\test\java\com\wang\activiti*ActivitiTest.java*

第四章 Activiti7+SpringBoot+SpringMVC开发

视频:112

代码:D:\WorkSpace\IDEA\activitispringboot06\src\main\java\com\wang\activiti\controller\MyController.java

目录

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值