Java SpringBoot は Activiti7 ワークフローを統合します

Java SpringBoot は Activiti7 ワークフローを統合します

この記事のプロジェクト デモのアドレスは記事の最後に添付されています

公式サイトホームページ: http: //activiti.org

ここに画像の説明を挿入

導入

Activitiは、ビジネス プロフェッショナル、開発者、システム管理者向けの軽量ワークフローおよびビジネス プロセス管理 (BPM) プラットフォームです。その中心となるのは、Java非常に高速で堅牢なBPMN 2作成エンジンです。これはオープンソースであり、Apacheライセンスに基づいて配布されます。Activiti任意の Java アプリケーション、サーバー、クラスター、またはクラウドで実行します。Spring と完全に統合されており、非常に軽量で、シンプルなコンセプトに基づいています。

プロジェクトの統合

依存関係を導入する

<!-- Activiti7依赖 -->
<dependency>
    <groupId>org.activiti</groupId>
    <artifactId>activiti-spring-boot-starter</artifactId>
    <version>7.1.0.M6</version>
</dependency>
<dependency>
    <groupId>org.activiti.dependencies</groupId>
    <artifactId>activiti-dependencies</artifactId>
    <version>7.1.0.M6</version>
    <type>pom</type>
</dependency>

YML設定ファイル

server:
  port: 8600
spring:
  application:
    name: activity7
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      url: jdbc:mysql://127.0.0.1:3306/activiti7?serverTimezone=Asia/Shanghai&characterEncoding=utf-8&nullCatalogMeansCurrent=true
      username: root
      password: 
      driverClassName: com.mysql.cj.jdbc.Driver
  # activiti7配置
  activiti:
    # 自动部署验证设置:true-开启(默认)、false-关闭
    check-process-definitions: false
    # 保存历史数据
    history-level: full
    # 检测历史表是否存在
    db-history-used: true
    # 关闭自动部署
    deployment-mode: never-fail
    database-schema-update: true
    # 解决频繁查询SQL问题
    async-executor-activate: false

構成クラス

import org.activiti.api.runtime.shared.identity.UserGroupManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.ArrayList;
import java.util.List;

@Configuration
public class ActivitiSpringIdentityAutoConfiguration {
    
    

   @Bean
   public UserGroupManager userGroupManager() {
    
    
       return new UserGroupManager() {
    
    
           @Override
           public List<String> getUserGroups(String s) {
    
    
               return new ArrayList<>();
          }
           @Override
           public List<String> getUserRoles(String s) {
    
    
               return null;
          }
           @Override
           public List<String> getGroups() {
    
    
               return null;
          }
           @Override
           public List<String> getUsers() {
    
    
               return null;
          }
      };
  }

}

スタートアッププロジェクトのテーブル構造の生成

ここに画像の説明を挿入

ここに画像の説明を挿入
画出来的就是开始创建表结构

Activiti のデータベースのサポート

Activiti は実行時にデータベースのサポートを必要とし、25 のテーブルを使用してプロセス定義ノードの内容をデータベース テーブルに読み取り、後で使用できるようにします。

activiti がサポートするデータベースとバージョンは次のとおりです。

データベースの種類 バージョン JDBC接続例 説明する
h2 1.3.168 jdbc:h2:tcp://localhost/activiti デフォルトで構成されたデータベース
mysql 5.1.21 jdbc:mysql://localhost:3306/activiti?autoReconnect=true mysql-connector-java を使用してテストを実行する
オラクル 11.2.0.1.0 jdbc:oracle:thin:@localhost:1521:xe
ポストグレ 8.1 jdbc:postgresql://localhost:5432/activiti
db2 db2jcc4 を使用した DB2 10.1 jdbc:db2://localhost:50000/activiti
mssql 2008 sqljdbc4 を使用 jdbc:sqlserver://localhost:1433/activiti

アクティビティデータテーブルの紹介

テーブルの分類 テーブル名 説明する
一般的なデータ
[ACT_GE_BYTEARRAY] 一般的なプロセス定義とプロセス リソース
[ACT_GE_PROPERTY] システム関連のプロパティ
プロセス履歴
[ACT_HI_ACTINST] 過去のプロセスの例
[ACT_HI_ATTACHMENT] 履歴プロセスの添付ファイル
[ACT_HI_COMMENT] 歴史的な説明情報
[ACT_HI_DETAIL] プロセス実行の履歴に関する詳細情報
[ACT_HI_IDENTITYLINK] 履歴プロセス実行中のユーザー関係
[ACT_HI_PROCINST] 過去のプロセスの例
[ACT_HI_TASKINST] 履歴タスクの例
[ACT_HI_VARINST] 実行中の履歴プロセスの可変情報
プロセス定義テーブル
[ACT_RE_DEPLOYMENT] 展開ユニット情報
[ACT_RE_MODEL] 機種情報
[ACT_RE_PROCDEF] デプロイされたプロセス定義
インスタンステーブルを実行する
[ACT_RU_EVENT_SUBSCR] ランタイムイベント
[ACT_RU_実行] ランタイムプロセス実行インスタンス
[ACT_RU_IDENTITYLINK] 実行時のユーザー関係情報、タスク ノードと参加者に関する情報の保存
[ACT_RU_JOB] ランタイムジョブ
[ACT_RU_TASK] ランタイムタスク
[ACT_RU_VARIABLE] ランタイム変数テーブル

プロジェクトデモのアドレス:

ここに画像の説明を挿入
送信: 「ワークフロー アイテムを取得」してダウンロードします

おすすめ

転載: blog.csdn.net/A_yonga/article/details/132106475