【1】初识activiti
1.1. 工作流与工作流引擎
工作流工作流(workflow)就是工作流程的计算模型,将部分或者全部的工作流程、逻辑让计算机帮你来处理,实现自动化
工作流引擎是指workflow作为应用系统的一部分,并为之提供对各应用系统有决定作用的根据角色、分工和条件的不同决定信息传递路由、内容等级等核心解决方案。
1.2. BPMN2.0规范
BPMN--业务流程模型与符号。
BPMN是一套流程建模的标准,主要目标是被所有业务用户容易理解的符号,支持从创建流程轮廓的业务分析到这些流程的最终实现,知道最终用户的管理监控。
通俗一点其实就是一套规范,画流程模型的规范。流程模型包括:流程图、协作图、编排图、会话图
【2】activiti概述
Activiti是一个开源的工作流引擎,它实现了BPMN 2.0规范,可以发布设计好的流程定义,并通过api进行流程调度。其核心是基于 JAVA 的超快速、超稳定的 BPMN2.0 流程引擎,强调流程服务的可嵌入性和可扩展性,同时更加强调面向业务人员。
Activiti 流程引擎重点关注在系统开发的易用性和轻量性上。每一项 BPM 业务功能 Activiti 流程引擎都以服务的形式提供给开发人员。通过使用这些服务,开发人员能够构建出功能丰富、轻便且高效的 BPM 应用程序。
【3】activiti的使用
准备
activiti整合eclipse插件
略
线上安装地址是:http://www.activiti.org/designer/update/
【4】代码
1.1 pom.xml文件配置
1.2 ActivitiConfig.java
/**
* 使用Java类完成配置文件
*
*@author架构师那些事
*/
@Configuration
publicclassActivitiConfig {
@Autowired
privateDataSourcedataSource;
/**
* 初始化配置,将创建25张表
*
*@return
*/
@Bean
publicStandaloneProcessEngineConfiguration processEngineConfiguration() {
StandaloneProcessEngineConfigurationconfiguration=newStandaloneProcessEngineConfiguration();
configuration.setDataSource(dataSource);
configuration.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
configuration.setAsyncExecutorActivate(false);
returnconfiguration;
}
/**
* 创建引擎
*@returnProcessEngine
*/
@Bean
publicProcessEngine processEngine() {
returnprocessEngineConfiguration().buildProcessEngine();
}
}
1.3 application.yml 文件中配置mysql数据源
spring:
datasource:
url:jdbc:mysql://localhost:3306/activiti?useSSL=true&characterEncoding=UTF-8&serverTimezone=UTC&nullCatalogMeansCurrent=true
username:root
password:123456
activiti:
check-process-definitions:false
database-schema-update:true
1.4 在本地创建数据库名为 activiti
1.5 ActivitiApplication.java 文件
@SpringBootApplication
publicclassActivitiApplication {
publicstaticvoidmain(String[]args) {
SpringApplication.run(ActivitiApplication.class,args);
}
}
【5】启动项目,Activiti引擎将自动帮你创建25张表 如下图:
完毕,谢谢~~