以下是一个简单的 Spring Boot 集成 Activiti 的示例:

  1. 添加 Maven 依赖

pom.xml 文件中添加以下依赖:

<dependency>
    <groupId>org.activiti</groupId>
    <artifactId>activiti-spring-boot-starter-basic</artifactId>
    <version>6.0.0</version>
</dependency>
  1. 配置 Activiti

application.properties 文件中添加以下配置:

spring.activiti.database-schema-update=true
spring.activiti.history-level=full
spring.activiti.check-process-definitions=true
spring.activiti.auto-deployment-enabled=true
spring.activiti.process-definition-location-prefix=classpath:/processes/
spring.activiti.process-definition-location-suffix=.bpmn20.xml
  1. 编写业务流程

src/main/resources/processes 目录下创建一个名为 MyProcess.bpmn20.xml 的文件,该文件包含以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:activiti="http://activiti.org/bpmn"
targetNamespace="http://www.activiti.org/test">
    <process id="myProcess" name="My process" isExecutable="true">
        <startEvent id="startevent1" name="Start"></startEvent>
        <endEvent id="endevent1" name="End"></endEvent>
        <userTask id="usertask1" name="User Task"></userTask>
        <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="usertask1"></sequenceFlow>
        <sequenceFlow id="flow2" sourceRef="usertask1" targetRef="endevent1"></sequenceFlow>
    </process>
</definitions>
  1. 编写控制器

src/main/java 目录下创建一个名为 MyController.java 的文件,包含以下代码:

@RestController
@RequestMapping("/process")
public class MyController {

    @Autowired
    private RuntimeService runtimeService;

    @PostMapping("/start")
    public String startProcess() {
        ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("myProcess");
        return "Process started. Process instance id is " + processInstance.getId();
    }
}
  1. 运行应用程序

运行 Spring Boot 应用程序并访问 http://localhost:8080/process/start URL,即可启动名为 My process 的业务流程。

spring boot 怎么集成 activiti 请编写一个demo

原文地址: https://www.cveoy.top/t/topic/b9IE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录