zoukankan      html  css  js  c++  java
  • spring boot(2):activiti整合

    原创不易,注明出处。

    简单介绍

    activiti基于apcahe开源协议的业务流程管理(BPM)引擎,引擎的核心目标是采用人工和系统调用组成的流程定义,并按一定顺序执行这些流程定义。activiti是一个轻量级的框架,但它可以在任何规模下工作,可执行几十到几千甚至百万个流程。

    activiti的开源地址:https://github.com/Activiti/Activiti  ,各位小伙伴们可以前往下载到本地学习。activiti可以通过画流程图来定义,符合BPMN2.0标准(什么是BPMN?百度百科),非常直观,自动生成XML文件。

    好了,我们说了那么多,我们开始进入正题。

    我们知道spring boot 是约定优于配置,大家应该很明白这是什么意思吧。activiti在spring boot 下配置是相当简单的,开箱即用,使用数据库是因为流程可以在几秒甚至跨越到几年后执行。

    <properties>
    <activiti.version>5.17.0</activiti.version>
    <mysql.version>5.1.45</mysql.version>
       <lombok.version>1.16.20</lombok.version>
    </properties>
    <dependencies>
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
    </dependency>

    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
    </dependency>

    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>${lombok.version}</version>
    </dependency>
    <dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>${mysql.version}</version>
    </dependency>
    </dependencies>

    创建src/main/resources/processes文件夹,用来保存流程定义,程序会自动部署到activiti引擎中。
    image

    我们来宣言一个简单的流程,使用idea来生成流程定义,

    image
    画一个简单的流程图。
    image
    创建一个简单的单元测试


    image


    自动生成24张表。


    image

    整合activiti explorer

    image


    配置数据源:

    spring.jpa.properties.hibernate.hbm2ddl.auto=update
    spring.jpa.database=default
    spring.datasource.jdbc-url=jdbc:mysql://localhost:3306/springboot_activiti?useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false&useSSL=false&zeroDateTimeBehavior=convertToNull&serverTimezone=GMT%2b8

    spring.datasource.username=root
    spring.datasource.password=root
    spring.datasource.driver-class-name=com.mysql.jdbc.Driver


    现在就可以使用activiti了。

  • 相关阅读:
    午餐
    Page Visibility API 页面是否获取焦点 Event: visibilitychange
    js dom 观察者属性 MutationObserver
    js substr和substring
    萌新 学习 vuex
    font-awesome图标转为图片
    如何用 CSS Animations 实现滑动图片展现文字的效果
    CSS3的变形、过渡、动画、关联属性
    用户网站访问速度慢详解
    CSS尺寸单位
  • 原文地址:https://www.cnblogs.com/javalittleman/p/9434546.html
Copyright © 2011-2022 走看看