当前位置: 代码迷 >> 综合 >> activity工作流初探及疑问(一)
  详细解决方案

activity工作流初探及疑问(一)

热度:87   发布时间:2024-02-27 01:36:25.0

写在前面:一直想学习activity工作流,实现一些流程审批功能,今天终于着手开始,在接下来的博客中,会讲解整合步骤及我之后的疑问,也希望路过的大神能指点一下,我会把大神的指点去验证,并将大佬ID及验证结果写在下一篇博客中。

项目架构:jdk1.8+springboot+springcloud+springsecurity+mybatisplus+redis+activity+jwt+mysql

因为是希望在我自己写的demo项目中来学习并集成,所以用到了这些技术,本系列文章将只针对activity来写。

开始集成:

1、集成第一步肯定是导入jar包,项目使用的maven,这里贴出pom:

<dependency><groupId>org.activiti</groupId><artifactId>activiti-spring-boot-starter-basic</artifactId><version>6.0.0</version><exclusions><exclusion><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId></exclusion></exclusions>
</dependency>

     为什么会排除mybatis呢,因为项目集成了mybatisplus包含了mybatis-core,activity中又有mybatis-core,启动项目时会报出jar包冲突错误。

2、修改yml文件

spring:activiti:database-schema-update: truehistory-level: fulldb-history-used: truecheck-process-definitions: falseasync-executor-activate: falseprocess-definition-location-prefix: classpath:/processes/

    a、check-process-definitions默认校验resources下的processes文件夹里的流程文件

    b、database-schema数据源指定

    c、database-schema-update建表规则

       flase: 无表或版本不同,启动会有异常

       true: 更新表,如果表不存在,则新建

       create_drop: 先新建,手动关闭时删除

       drop-create: 删除旧的然后新建表

    d、db-history-used检测历史表是否存在

    e、history-level记录历史等级

    f、async-executor-activate是否流程引擎一启动就激活

 

   3、配置类(注入数据源和事务管理器,这里的数据源可以自己重新定义)

@Configuration
public class ActivitiConfig extends AbstractProcessEngineAutoConfiguration {//注入数据源和事务管理器@Beanpublic SpringProcessEngineConfiguration springProcessEngineConfiguration(@Qualifier("dataSource") DataSource dataSource,@Qualifier("transactionManager") PlatformTransactionManager transactionManager,SpringAsyncExecutor springAsyncExecutor) throws IOException {return this.baseSpringProcessEngineConfiguration(dataSource, transactionManager, springAsyncExecutor);}}

4、启动类排除security

@SpringBootApplication(exclude = SecurityAutoConfiguration.class)

    启动项目后,会自动在当前数据库下新建表

    下一文章  将进行使用!!!!!

  相关解决方案