六、流程控制操作 - RuntimeService

本文详细介绍了RuntimeService在流程控制中的操作,包括启动流程(如根据ID、key和Message)、查询流程、删除流程、中断流程以及触发等待节点等关键功能。
摘要由CSDN通过智能技术生成

一、启动流程
1、根据ID启动流程

package org.crazyit.activiti.RuntimeService;

import java.util.HashMap;
import java.util.Map;

import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.RepositoryService;
import org.activiti.engine.RuntimeService;
import org.activiti.engine.repository.Deployment;
import org.activiti.engine.repository.ProcessDefinition;

public class ProcessInstanceStartById {
   

	/**
	 * @param args
	 */
	public static void main(String[] args) {
   
		// 创建流程引擎
		ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
		// 得到流程存储服务实例
		RepositoryService repositoryService = engine.getRepositoryService();
		
		RuntimeService runtimeService = engine.getRuntimeService();
		// 部署流程描述文件
		Deployment dep = repositoryService.createDeployment()
				.addClasspathResource("bpmn/startById.bpmn20.xml").deploy();		
		// 查找流程定义
		ProcessDefinition pd = repositoryService.createProcessDefinitionQuery()
				.deploymentId(dep.getId()).singleResult();
		//设置流程参数
		Map<String, Object> vars = new HashMap<String, Object>();
		vars.put("days", 5);
		//启动流程
		runtimeService.startProcessInstanceById(pd.getId());
		runtimeService.startProcessInstanceById(pd.getId(), vars);
		runtimeService.startProcessInstanceById(pd.getId(), "vacationRequest1");
		runtimeService.startProcessInstanceById(pd.getId(), "vacationRequest2", vars);
		// 查询流程实例,结果为4
		long count = runtimeService.createProcessInstanceQuery().count();
		System.out.println("流程实例数量:" + count);
	}

}

2、根据key启动流程

package org.crazyit.activiti.RuntimeService;
import java.util.HashMap;
import java.util.Map;

import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.RepositoryService;
import org.activiti.engine.RuntimeService;
import org.activiti.engine.repository.Deployment;

/**最常用
 * 根据key启动流程
 * @author mz
 *
 */
public class ProcessInstanceStartByKey {
   

	/**
	 * @param args
	 */
	public static void main(String[] args) {
   
		// 创建流程引擎
		ProcessEngine engine = ProcessEngines
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值