三、Activiti5 流程管理

流程部署

//得到一个默认的流程引擎
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
Deployment deployment = processEngine.getRepositoryService()
        .createDeployment()
        .addClasspathResource("WeChat.bpmn")
        .addClasspathResource("WeChat.png")
        .deploy();

WeChat.bpmn 为我们设计好的流程图
流程部署有三种方式,请查看这篇《Activiti 部署的三种方式与部署查询流程查询源码》:http://blog.csdn.net/FTDD_HW/article/details/76551954

启动流程

ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
processEngine.getRuntimeService()
        .startProcessInstanceByKey(pdkey,variables);

启动时我们可以根据key 来启动,也可以根据ID来启动。还可以带一些参数进行。Variables为一个Map集合.如果我们在流程中定义了变量,在启动前则需要将变量通过Map传递进行。

查看所有流程部署

List<ProcessDefinition> processDefinition = processEngine.getRepositoryService()
        .createProcessDefinitionQuery()
        .list();

我们需要一个list()来将结果转化成一个List集合,方便我们取值。

查看流程是否结束

ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
ProcessInstance pi = processEngine.getRuntimeService()
        .createProcessInstanceQuery()
        .processInstanceId("130001")
        .singleResult();

如果PI 的值为 null 则流程已经结果了

删除流程部署

// processEngine.getRepositoryService()
// .deleteDeployment("1");//用该API只能删除流程定义的内容和部署的内容
processEngine.getRepositoryService()
        .deleteDeployment("55001", true);//删除了关于deploymentID为1的所有的数据,包括:流程定义、流程部署、任务等信息
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值