• spring boot activiti 整合


    1.pom.xml

    <dependency>
        <groupId>org.activiti</groupId>
        <artifactId>activiti-spring-boot-starter-basic</artifactId>
        <version>5.22.0</version>
    </dependency>
    

    2. resources目录下新建processes文件夹放一个xxx.bpmn流程文件

    3. java config方式配置:config.activiti下新建一个类ActivitiConfig:

    其中数据源和事务管理器在3.spring boot mybatis druid多数据源里已经配置完,直接引用名字注入就可以了.

    package com.yunchuang.config.activiti;
    import org.activiti.spring.SpringAsyncExecutor;
    import org.activiti.spring.SpringProcessEngineConfiguration;
    import org.activiti.spring.boot.AbstractProcessEngineAutoConfiguration;
    import org.springframework.beans.factory.annotation.Qualifier;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.transaction.PlatformTransactionManager;
    import javax.sql.DataSource;
    import java.io.IOException;
    /**
     * activiti配置文件
     * AbstractProcessEngineAutoConfiguration在activiti-spring-boot-starter-basic下
     *
     * @author 尹冬飞
     * @create 2017-04-10 10:30
     */
    @Configuration
    public class ActivitiConfig extends AbstractProcessEngineAutoConfiguration {
        static final String NAME = "master";
        //注入数据源和事务管理器
        @Bean
        public SpringProcessEngineConfiguration springProcessEngineConfiguration(
                @Qualifier(NAME + "DataSource") DataSource dataSource,
                @Qualifier(NAME + "TransactionManager") PlatformTransactionManager transactionManager,
                SpringAsyncExecutor springAsyncExecutor) throws IOException {
            return this.baseSpringProcessEngineConfiguration(dataSource, transactionManager, springAsyncExecutor);
        }
    }
    

    4.这样就可以直接调用相关的service了.测试代码:

    package com.yunchuang;
    import org.activiti.engine.RuntimeService;
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.test.context.junit4.SpringRunner;
    @RunWith(SpringRunner.class)
    @SpringBootTest
    public class Demo8ApplicationTests {
        @Autowired
        RuntimeService runtimeService;
        @Test
        public void contextLoads() {
            long count = runtimeService.createProcessInstanceQuery()
                    .count();
            System.out.println(count);
        }
    }
    
    原文地址:https://www.jianshu.com/p/6c9882693f35
  • 相关阅读:
    day19(上)_IO流2(BufferedReaer,BufferedWriter,BufferedInputStream,BufferedOutputStream)
    day19(下)_IO流4(InputStreamReader,OutputStreamWriter,流操作规律总结)
    Synchronized锁 IT
    Linux查看端口信息命令 IT
    ReentrantLock锁 IT
    让网站实时生成多种电子书:jar、umd、chm、pdf、epub
    mysql性能的检查和调优方法
    新型的大型bbs架构(squid+nginx)
    uchome中的防反复提交机制
    joymobiler V2.7发布,支持pdf文档的生成
  • 原文地址:https://www.cnblogs.com/jpfss/p/11084497.html
Copyright © 2020-2023  润新知