【工作流Activiti】MyActivit的maven项目

1、Idea新建一个项目MyActivit的maven项目

【工作流Activiti】MyActivit的maven项目_第1张图片

2、安装插件

在 idea 里面,activiti 的插件叫 actiBPM,在插件库里面把它安装好,重启 idea 就行了。

【工作流Activiti】MyActivit的maven项目_第2张图片

3、 maven 项目中,并更改 pom.xml。pom 中依赖如下:



    4.0.0

    org.example
    MyActiviti
    1.0-SNAPSHOT

    
        8
        8
        UTF-8
    

    
        
        
            junit
            junit
            4.12
        
        
        
            org.activiti
            activiti-spring
            5.18.0
        
        
            org.activiti
            activiti-engine
            5.18.0
            
                
                    slf4j-api
                    org.slf4j
                
                
                    spring-beans
                    org.springframework
                
                
                    jackson-core-asl
                    org.codehaus.jackson
                
                
                    commons-lang3
                    org.apache.commons
                
                
                    commons-lang3
                    org.apache.commons
                
            
          
        
            mysql
            mysql-connector-java
            5.1.35
        
    


4、创建工作流

  • 使用activiti Modeler来创建工作流

activiti Modeler是一个可视化的工作流编辑器,可以方便地创建一个工作流。可以在官网下载之后解压,然后启动一个tomcat服务器来访问该编辑器。

  • 使用BPMN 2.0文件来创建工作流

BPMN 2.0是一种XML格式的文件,可以使用文本编辑器直接编写。不同的元素使用不同的标签来表示。

例如:

标签表示一个具体的工作流程,

标签表示一个开始节点,

标签表示一个服务任务等等。

5、编写Java代码

接下来我们需要编写Java代码来调用工作流。通常,我们需要定义一个启动工作流的Service,在其中使用activiti来启动工作流。具体的代码可以参考以下示例:

@Service
public class WorkflowService {

    @Autowired
    private RuntimeService runtimeService;

    public void startWorkflow() {
        // 定义需要传入的参数
        Map variables = new HashMap();
        variables.put("applicant", "John Doe");
        variables.put("email", "[email protected]");

        // 启动工作流,并传入参数
        ProcessInstance processInstance =
            runtimeService.startProcessInstanceByKey("processKey", variables);
    }
}

在上述示例代码中,我们需要注入RuntimeService对象来启动工作流。startProcessInstanceByKey方法中使用了一个参数processKey,它需要与工作流文件中定义的流程ID保持一致。

6、测试

编写完Java代码后,可以编写测试用例来测试工作流是否能够成功启动。可以参考以下示例代码:

@RunWith(SpringRunner.class)
@SpringBootTest
public class WorkflowServiceTest {

    @Autowired
    private WorkflowService workflowService;

    @Test
    public void testStartWorkflow() {
        workflowService.startWorkflow();
    }
}

在上述示例代码中,我们需要注入WorkflowService对象来启动工作流。在testStartWorkflow方法中调用了startWorkflow方法来启动工作流。

可以关注我,查看【工作流Activiti】的其他文章介绍。

【工作流Activiti】MyActivit的maven项目_第3张图片

你可能感兴趣的:(Activiti,工作流,java,spring,boot,spring)