Spring Boot集成Activiti工作流

来源:互联网 发布:北京汉克软件 编辑:程序博客网 时间:2024/05/02 18:50

项目搭建

  • 使用IDE或者在http://start.spring.io上创建一个SpringBoot的基础项目,差不多是这样的目录结构
    目录结构
  • 引入相关依赖
<!-- activiti --><dependency>    <groupId>org.activiti</groupId>    <artifactId>activiti-spring-boot-starter-basic</artifactId>    <version>${activiti.version}</version></dependency><dependency>    <groupId>org.activiti</groupId>    <artifactId>activiti-modeler</artifactId>    <version>${activiti.version}</version></dependency><dependency>    <groupId>org.activiti</groupId>    <artifactId>activiti-diagram-rest</artifactId>    <version>${activiti.version}</version></dependency><!-- db --><dependency>    <groupId>mysql</groupId>    <artifactId>mysql-connector-java</artifactId></dependency><dependency>    <groupId>org.mybatis.spring.boot</groupId>    <artifactId>mybatis-spring-boot-starter</artifactId>    <version>1.3.0</version></dependency><dependency>    <groupId>com.github.drtrang</groupId>    <artifactId>druid-spring-boot-starter</artifactId>    <version>1.0.2</version></dependency><dependency>    <groupId>com.baomidou</groupId>    <artifactId>mybatisplus-spring-boot-starter</artifactId>    <version>1.0.4</version></dependency>**

这样基本的东西也就差不多了

配置activiti

  • 我这里将application.properties改成了yml格式(个人比较喜欢吧),配置文件如下:
spring:  application:    name: spring-boot-activiti  datasource:    driver-class-name: com.mysql.jdbc.Driver    url: jdbc:mysql://localhost:3306/activiti_learning?useUnicode=true&characterEncoding=utf8    username: root    password:     druid:      validationQuery: SELECT 1      initialSize: 10      minIdle: 10      maxActive: 200      minEvictableIdleTimeMillis: 180000      testOnBorrow: false      testWhileIdle: true      removeAbandoned: true      removeAbandonedTimeout: 1800      logAbandoned: true      poolPreparedStatements: true      maxOpenPreparedStatements: 100  activiti:    check-process-definitions: false  mvc:    static-path-pattern: /**security:  basic:    enabled: falseserver:  port: 6000mybatis-plus:  mapper-locations: classpath:mapper/*Mapper.xml  typeAliasesPackage: com.xiaoantimes.taichi.entity  global-config:    id-type: 2    field-strategy: 2    auto-set-db-type: true    db-column-underline: true    refresh-mapper: true  configuration:    map-underscore-to-camel-case: true    cache-enabled: false
  • 配置activiti的SpringProcessEngineConfiguration
@Configurationpublic class ActivitiConfig {  @Autowired  PlatformTransactionManager transactionManager;  @Autowired  DruidDataSource druidDataSource;  @Bean  public SpringProcessEngineConfiguration getProcessEngineConfiguration(){      SpringProcessEngineConfiguration config =                               new SpringProcessEngineConfiguration();      config.setDataSource(druidDataSource);      config.setTransactionManager(transactionManager);      config.setDatabaseType("mysql");      config.setDatabaseSchemaUpdate("true");      return config;  }}

到这里SpringBoot已经集成好了Activiti

启动

我们启动我们到程序,这时候,你可以在数据库中看到生成了Activiti相关到表,说明我们集成成功了
activiti数据库表

问题

  • 看到有的人是在配置的时候,还配置了八大接口,其实不需要,用起步依赖,这些都不需要我们来做了,需要用的时候直接注入就行