Activiti 工作流引擎 ~ 官方demo学习

本文详细介绍了Activiti工作流引擎5.22.0版本的官方demo学习,包括其使用Vaadin作为前端框架,展示了如何解压和理解demo的文件结构,如modeler.html、属性配置文件、Spring配置文件等。还探讨了关键类的作用,如用于初始化数据、配置对象以及模型的编辑和保存。文章涵盖了新建、编辑、部署、导出模型等操作的后台逻辑和事件监听设置。
摘要由CSDN通过智能技术生成

Activiti 工作流引擎 官方demo学习

本文使用的Activiti版本为5.22.0

Activiti 官方网站

Activiti-5.22.0 源码

Vaadin 官方网站

Vaadin Web应用开发教程(3):Vaadin应用程序框架介绍

Activiti 官方demo中使用Vaadin作为前端框架进行页面展示

Activiti 官方下载的文件目录如下,在wars文件夹中提供了两个demo
这里写图片描述

解压activiti-explorer.war,文件结构如下
这里写图片描述

modeler.html是Activiti Modeler的编辑界面,如图:
这里写图片描述

属性配置文件
日志属性:log4j.properties
引擎属性:engine.properties
数据库属性:db.properties
ui.properties

spring配置文件
activiti-custom-context.xml
activiti-login-context.xml
activiti-ui-context.xml

org.activiti.explorer.conf java配置文件
这里写图片描述

org.activiti.explorer.servlet servlet文件
这里写图片描述

对应的java文件可以在源码中找到
这里写图片描述

web.xml

<listener>
    <listener-class>org.activiti.explorer.servlet.WebConfigurer</listener-class>
</listener>

WebConfigurer.java

public class WebConfigurer implements ServletContextListener {
   

  private final Logger log = LoggerFactory.getLogger(WebConfigurer.class);

  public AnnotationConfigWebApplicationContext context;

  public void setContext(AnnotationConfigWebApplicationContext context) {
    this.context = context;
  }

  @Override
  public void contextInitialized(ServletContextEvent sce) {
    ServletContext servletContext = sce.getServletC
Activiti 是一种开源的工作流引擎,用于实现和管理业务流程。封装一个 Activiti 工作流引擎Demo 可以帮助我们更好地理解和使用这个工具。下面我将介绍如何封装一个 Activiti 工作流引擎Demo。 首先,我们需要在项目中引入 Activiti 的依赖,可以通过 Maven 或者手动导入 jar 包的方式。接下来,我们可以创建一个基于 Spring Boot 的应用程序。 在 Demo 中,我们需要定义一些基本的流程定义和流程实例。流程定义是一个流程模板,描述了业务流程的结构和步骤;而流程实例是流程定义的一个具体执行过程。 为了创建流程定义,我们需要使用 Activiti 提供的 ProcessEngineConfigurator 类。该类可以帮助我们初始化和配置 Activiti 引擎。在配置文件中,我们可以定义数据库连接信息、创建流程定义的方式以及其他相关配置。 在 Demo 中,我们可以使用 BPMN (Business Process Model and Notation)来定义流程模型。BPMN 是一种标准化的图形化表示语言,可以帮助我们更好地理解和管理业务流程。我们可以使用 Activiti 提供的设计器来创建和编辑 BPMN 文件。 接下来,我们需要实现流程定义的部署和启动。部署是将流程定义存储在 Activiti 引擎中的过程,启动是根据定义的流程模板创建一个流程实例。 我们可以使用 Activiti 提供的 RepositoryService 来进行部署操作。通过该服务,我们可以将 BPMN 文件部署到引擎中,并且可以查询已经部署的流程定义。 通过调用 RuntimeService 的 startProcessInstanceByKey 方法,我们可以根据流程定义的 key(在部署时定义的)启动一个流程实例。 在流程实例启动后,我们可以使用 TaskService 进行任务分配和处理。可以通过查询特定用户的待办任务和已完成任务,完成任务的提交操作。 最后,我们可以使用 HistoryService 来查询已完成的流程实例和任务的历史记录。这可以帮助我们进行流程性能和效率的评估。 封装一个 Activiti 工作流引擎Demo,可以帮助我们更好地了解和使用这个工作流引擎。通过实际的示例,我们可以学习如何创建流程定义、部署和启动流程实例、处理任务以及查询历史记录等操作。这将帮助我们更好地管理和优化业务流程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值