SoFunction
Updated on 2025-03-06

Introduction to Commonly Used Activiti Classes

The Activiti project is a new open source BPM platform based on the Apache license. This article briefly describes the commonly used Activiti classes. The details are as follows:

1. Why use workflow

Disadvantages of traditional design when processes change:

1. The properties related to the process and the properties of the business object are placed in the business object.
2. The logic and business logic related to the process are placed in the business logic.

Commonly used Activiti classes:

ProcessEngineConfiguration Process Engine Configuration Objects (configure database connection information and table building policy)
The core object of the ProcessEngine process engine (check whether the environment is correct and manage various services)
RepositoryService Repository Service Objects (Manage Deployment Information)
RuntimeService runtime service object (management process startup, circulation, etc.)
TaskService Task Service object (the data in the Task table is the extension of the Exeuction table, the creation time and handler of the task)

Deployment related categories:

DeploymentBuilder Publish configuration objects (alias for published rule files, rule pictures and process displays)
ProcessDefinition Process Definition (used to describe the overall information of the publishing process)
ActivityImpl Process activity (used to describe information related to each activity in a process)

Run related classes:

Execution Execution object (used to describe the basic information of the current active node)
ProcessInstance Process Instance object (process instances always want only Execution (root) object)
Task task object (task creation time and handler)

2. Use cases:

Process deployment information management:

1. Release process
2. View process definition ProcessDefinitionQuery
3. Deletion process
4. View process attachments

Process execution management:

1. Start the process
2. View tasks (private/public)
3. Claim Claim UserId and TaskId
4. Handle tasks complete (taskId)
5. Check the task status