21xrx.com
2024-12-23 03:59:42 Monday
登录
文章检索 我的文章 写文章
Java工作流引擎开发Activiti——从Hello World开始
2023-06-12 06:29:40 深夜i     --     --
Java Activiti 工作流引擎开发

Activiti是一个轻量级的、开源的Java工作流引擎,可以用于处理各种业务场景下的审批、流转等工作流程。本文将介绍如何使用Java开发Activiti,并演示一个Hello World级别的案例。

1. 环境准备

开发Activiti需要以下环境:

- JDK 1.8及以上

- Eclipse或者IntelliJ IDEA

- Activiti插件

2. 创建工程

在Eclipse中选择File->New->Project->Maven Project创建一个Maven工程。在POM文件中添加Activiti依赖:


  org.activiti

  activiti-spring-boot-starter-basic

  6.0.0

3. 编写代码

在创建好的工程中新建一个类HelloWorldProcess.java,实现一个简单的工作流程:


@Service

public class HelloWorldProcess {

 @Autowired

 private ProcessEngine processEngine;

 public void start() {

  RuntimeService runtimeService = processEngine.getRuntimeService();

  Map variables = new HashMap<>();

  variables.put("name", "Activiti");

  ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("HelloWorld", variables);

  System.out.println("流程ID:" + processInstance.getId());

  System.out.println("流程定义ID:" + processInstance.getProcessDefinitionId());

 }

}

接下来,在resources目录下创建一个名为HelloWorld.bpmn20.xml的文件,定义流程:

xml

       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

       xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd"

       targetNamespace="https://www.activiti.org/processdef">

  

    

    

    

    

    

  

4. 测试

在工程中创建一个名为Application.java的类,并在其中实例化HelloWorldProcess,并调用start方法:


@SpringBootApplication

public class Application {

 public static void main(String[] args) {

  SpringApplication.run(Application.class, args);

  ApplicationContext context = new AnnotationConfigApplicationContext(Application.class);

  HelloWorldProcess process = context.getBean(HelloWorldProcess.class);

  process.start();

 }

}

5. 运行结果

在控制台中可以看到流程ID和流程定义ID:


流程ID:2501

流程定义ID:HelloWorld:1:4

本文介绍如何使用Java开发Activiti,从环境准备、创建工程、编写代码到测试运行,从中可以对Activiti的基本工作原理有更深入的理解。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复