第一章 Activiti7 功能简介
一、概念
通过以下两点完成目标
1.人工审批某任务
2.预定义规则自动执行行某任务
二、工作流系统
1.业务系统
2.纯工作流系统(不关心相关业务、和业务系统区分降低耦合性)
三、适用业务
1.消费、银行、物业、财务审核、人事管理、行政管理等大多数行业
四、实现方式
1.通过状态字段记录(缺点:耦合性高、改动流程成本高、特殊情况状态流转流程过长)
2.通过工作流方式
第二章 Activiti7 概述
一、概述
1.工作流引擎,通过将业务中复杂的流程抽出来,使用专门的bpmn语言进行定义。业务按照具体流程定义形成闭环,由activti7进行管理
二、bpm
1.流程、符号、业务逻辑都包含在图中。用文本打开是xml文件
三、流程处理步骤
1.部署activti7
下载jar包,或者maven依赖
2.步骤处理
流程会存入数据库中、bpmn图部署、执行步骤等也会存入
3.启动一个流程实例
流程实例也叫: Processlnstance
发起一个流程开始运行
4.查询代办任务(目前项目中暂未开放,只是通过状态查询搜索待办)
5.办理任务
第三章、环境配置
开发环境
1.mysql 5+
2.jdk 1.8
3.tomcat8.5
4.idea
activiti环境
activiti 7 默认支持spring5
1.需要的依赖
activiti-engine-7.0.0.beta1.jar
activiti依赖的 jar 包:mybatis、alf4j、log4j 等
activiti依赖的 spring包
数据库驱动
第三方数据连接池 dbcp
单元测试 Junit-4.12.jar
<dependencies>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
<version>7.0.0.Beta1</version>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring</artifactId>
<version>7.0.0.Beta1</version>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-bpmn-model</artifactId>
<version>7.0.0.Beta1</version>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-bpmn-converter</artifactId>
<version>7.0.0.Beta1</version>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-json-converter</artifactId>
<version>7.0.0.Beta1</version>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-bpmn-layout</artifactId>
<version>7.0.0.Beta1</version>
</dependency>
<dependency>
<groupId>org.activiti.cloud</groupId>
<artifactId>activiti-cloud-services-api</artifactId>
<version>7.0.0.Beta1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.40</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<!-- log start -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j.version}</version>
</dependency>
<!-- log end -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>alfresco</id>
<name>Activiti Releases</name>
<url>https://artifacts.alfresco.com/nexus/content/repositories/activiti-releases/</url>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
第四章、数据库介绍
1.xx_ge_xx 通用数据表
2. xx_hi_xx 历史数据、流程实例、变量等
3. xx_re_xx 流程定义内容、和流程静态资源
4. xx_ru_xx 运行时所需数据、流程实例变量等等