时间:2021-05-19
记录一下工作流的在Springboot中的使用,,顺便写个demo,概念,什么东西的我就不解释了,如有问题欢迎各位大佬指导一下。
1.创建springboot项目后导入依赖
<dependency> <groupId>org.activiti</groupId> <artifactId>activiti-spring-boot-starter-basic</artifactId> <version>6.0.0</version> </dependency>添加配置之后再springboot启动类后面加上一行代码否则启动时会报错
@SpringBootApplication(exclude = SecurityAutoConfiguration.class)添加数据源以及activiti的配置
spring: activiti: database-schema-update: drop‐create //默认为false,activiti在启动的时候会对比数据库中的表中保存的版本,如果不一样会抛出异常 // true activiti会对数据库中的表进行更新操作,如果表不存在,则自动创建 // create_drop 在activiti启动的时候创建表,关闭时删除表,必须手动关闭 // drop-create 在启动的时候先删除表后再创建新的表 check-process-definitions: false datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC username: root password: root2.初始化activiti表
这里一共有3种方式去创建
第一种
@Test public void initTables() { //创建数据源// DriverManagerDataSource dataSource=new DriverManagerDataSource();// dataSource.setDriverClassName("com.mysql.jdbc.Driver");// dataSource.setUrl("jdbc:mysql://127.0.0.1:3306/test");// dataSource.setUsername("root");// dataSource.setPassword("root"); // 创建流程引擎的配置 ProcessEngineConfiguration configuration = ProcessEngineConfiguration .createStandaloneProcessEngineConfiguration(); configuration.setJdbcDriver("com.mysql.cj.jdbc.Driver"); configuration.setJdbcUrl("jdbc:mysql://localhost:3306/test?useUnicode=true&nullCatalogMeansCurrent=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC"); configuration.setJdbcUsername("root"); configuration.setJdbcPassword("root");// configuration.setDataSource(dataSource); /** * ProcessEngineConfiguration.DB_SCHEMA_UPDATE_FALSE 如果数据库里面没有activit的表,也不会创建 * ProcessEngineConfiguration.DB_SCHEMA_UPDATE_CREATE_DROP 创建表,使用完之后删除 * ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE 如果数据库里面没有表,就创建 * * dorp-create 代表如果数据库里面有表,那么先删除再创建 * */ //配置表的初始化的方式 configuration.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE); //得到流程引擎 ProcessEngine processEngine=configuration.buildProcessEngine(); System.out.println(processEngine); }第二种配置activiti.cfg.xml
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://plete(taskId2,variable); }另外我在开发中发现在流程图画完之后将bpmn后缀改为xml方式生成图片之后,再次改为bpmn的时候,发现之前写的Condition中变成了\n,如图
我们再次将后缀改为xml之后查看我们的条件:
解决方式:
将condition前面后面的空格删掉即可;
到此这篇关于关于在IDEA中SpringBoot项目中activiti工作流的使用详解的文章就介绍到这了,更多相关IDEA SpringBoot activiti工作流内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
前言最近一直研究springboot,根据工作需求,工作流需要作为一个单独的微服务工程来提供给其他服务调用,现在简单的写下工作流(使用的activiti)微服务
如果使用IDEA创建Springboot项目,默认会在resource目录下创建application.properties文件,在springboot项目中,
Activiti项目是一项新的基于Apache许可的开源BPM平台,本文就来简述一下Activiti常用类。具体如下:一、为什么要使用工作流传统的设计在流程发生
工作流一、工作流介绍:工作流是门户网站或政府单位用来控制文档流转的自定义流程,将定制的工作流设置到栏目上,则栏目中的文档会自动按照定制的工作流自动流转,并由系统
工作流是门户网站或政府单位用来控制文档流转的自定义流程,将定制的工作流设置到栏目上,则栏目中的文档会自动按照定制的工作流自动流转,并由系统控制其执行的过程以方便