项目实践工作流之Activiti学习(二十)

2023-11-02 14:30:52 浏览数 (2)

6.2.4 操作数据表

流程定义部署后操作 activiti 数据表如下:

SELECT * FROM act_re_deployment #流程定义部署表,记录流程部署信息

SELECT * FROM act_re_procdef #流程定义表,记录流程定义信息

SELECT * FROM act_ge_bytearray #资源表

说明:

act_re_deployment 和 act_re_procdef 一对多关系,一次部署在流程部署表生成一条记录,但一次部署可以部署多个流程定义,每个流程定义在流程定义表生成一条记录。每一个流程定义在

act_ge_bytearray 会存在两个资源记录,bpmn 和 png。

建议:一次部署一个流程,这样部署表和流程定义表是一对一有关系,方便读取流程部署及流程定义信息。

6.3流程定义查询

查询部署的流程定义。

// 流程定义查询

代码语言:javascript复制
@Test
public void queryProceccDefinition() {
// 流程定义key
String processDefinitionKey = "holiday";
// 获取repositoryService
RepositoryService repositoryService = processEngine
.getRepositoryService();
// 查询流程定义
ProcessDefinitionQuery processDefinitionQuery = repositoryService
.createProcessDefinitionQuery();
//遍历查询结果
List<ProcessDefinition> list = processDefinitionQuery
.processDefinitionKey(processDefinitionKey)
.orderByProcessDefinitionVersion().desc().list();
for (ProcessDefinition processDefinition : list) {
System.out.println("------------------------");
System.out.println(" 流 程 部 署 id : "   
processDefinition.getDeploymentId());
System.out.println("流程定义id:"   processDefinition.getId());
System.out.println("流程定义名称:"   processDefinition.getName());
System.out.println("流程定义key:"   processDefinition.getKey());
System.out.println("流程定义版本:"   processDefinition.getVersion());
}
}

0 人点赞