Activiti プロジェクトは、Apache ライセンスに基づく新しいオープン ソース BPM プラットフォームです。この記事では、一般的な Activiti クラスについて簡単に説明します。詳細は以下のとおりです。
1. ワークフローを使用する理由
プロセスが変化した場合の従来の設計の欠点:
1. ビジネスオブジェクトには、プロセス関連の属性とビジネスオブジェクトの属性が配置されます。
2. プロセス関連ロジックとビジネスロジックをすべてビジネスロジックに配置
アクティビティの共通クラス:
ProcessEngineConfiguration プロセス エンジン構成オブジェクト (データベース接続情報とテーブル作成戦略の構成)
ProcessEngine はプロセス エンジンの中核となるオブジェクトです (環境が正しいかどうかを確認し、さまざまなサービスを管理します)
RepositoryService ウェアハウス サービス オブジェクト (デプロイ情報の管理)
RuntimeService ランタイムサービスオブジェクト(管理プロセスの起動、転送など)
TaskService タスク サービス オブジェクト (Task テーブルのデータは、実行テーブル、タスクの作成時間、およびタスクを処理する人を拡張したものです)
デプロイメント関連のクラス:
DeploymentBuilder は構成オブジェクト (公開されたルール ファイル、ルール ピクチャ、およびプロセス表示のエイリアス) を公開します。
ProcessDefinition プロセス定義 (リリースプロセスの全体的な情報を記述するために使用されます)
ActivityImpl プロセス アクティビティ (プロセス内の各アクティビティに関連する情報を記述するために使用されます)
関連するクラスを実行します。
実行実行オブジェクト(現在アクティブなノードの基本情報を記述するために使用されます)
ProcessInstance プロセス インスタンス オブジェクト (プロセス インスタンスは常に実行 (ルート) オブジェクトのみを必要とします)
タスク タスク オブジェクト (タスクの作成時間とハンドラー)
2. 使用例:
プロセス展開情報管理:
1. リリースプロセス
2. プロセス定義の表示 ProcessDefinitionQuery
3. 削除処理
4. プロセスの添付ファイルを表示する
プロセス実行管理:
1. プロセスを開始します
2. タスクの表示 (プライベート/パブリック)
3. UserId と TaskId を要求する
4. プロセスタスクの完了 (taskId)
5. タスクのステータスを確認する