Skip to content
On this page

Flowable流程引擎

emsp;Flowable是BPMN的一个基于java的软件实现,不过Flowable不仅仅包括BPMN,还有DMN决策表和CMMN Case管理引擎,并且有自己的用户管理、微服务API等一系列功能,是一个服务平台。

flowable-ui下载地址:Releases · flowable/flowable-engine · GitHub

tomcat下载地址:Apache Tomcat® - Apache Tomcat 9 Software Downloads

基础要点

所需依赖

  1. springboot项目,添加依赖
xml
// flowable核心依赖包
implementation group: 'org.flowable', name: 'flowable-spring-boot-starter', version: '6.7.2'
// mysql数据库驱动
implementation group: 'mysql', name: 'mysql-connector-java', version: '8.0.29'
// 数据库连接池druid   
implementation group: 'com.alibaba', name: 'druid-spring-boot-starter', version: '1.2.11

初始化ProcessEngine

  • ProcessEngine对象是一个线程安全的对象,因此通常只需要一个应用中初始化一次即可

  • ProcessEngine由ProcessEngineConfiguration实例创建,创建的方式可以使用配置xml文件,也可以使用硬编码方式创建。

  • ProcessConfigutation所需的最小配置,是数据库JDBC连接

编码方式

java
@Test
    public void processEngine01() {
        // 1.获取ProcessEngineConfigure 对象
        ProcessEngineConfiguration configuration = new StandaloneProcessEngineConfiguration();
        // 2.配置数据库连接的相关信息
        configuration.setJdbcDriver("com.mysql.cj.jdbc.Driver");
        configuration.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/flowable-learn?characterEncoding=utf-8");
        configuration.setJdbcUsername("root");
        configuration.setJdbcPassword("Jiliang272");
        // 3.如果数据库的表结构不存在就创建
        configuration.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);

        ProcessEngine processEngine = configuration.buildProcessEngine();

        System.out.println("创建的processEngine对象" + processEngine);
    }
  • 启动之后,发现数据库创建有关于flowable6.7.2版本的47张表信息

image-20220801070600628

xml配置