Activiti学习笔记第十一篇:开始活动节点

1. 流程图

在这里插入图片描述

2. 部署流程定义+启动流程实例+查询流程实例+查询历史流程实例

public void testStart() throws Exception {
	InputStream inputStreamBPMN = this.getClass().getResourceAsStream("StartProcess.bpmn");
	InputStream inputStreamPNG = this.getClass().getResourceAsStream("StartProcess.png");
	// 部署流程定义
	processEngine.getRepositoryService()//
						.createDeployment()//创建部署对象
						.addInputStream("startTest.bpmn", inputStreamBPMN)//添加规则文件
						.addInputStream("startTest.png", inputStreamPNG)//添加规则图片
						.deploy();//发布流程
	// 2启动流程
	String processDefinitionKey = "startTest";
	ProcessInstance pi = processEngine.getRuntimeService()//
						.startProcessInstanceByKey(processDefinitionKey);
	System.out.println("pid:"+pi.getId()+",activitiId:"+pi.getActivityId()+",ended:"+pi.isEnded());
	String pid = pi.getId();
	System.out.println("============================");
	//当流程已结束后,流程实例被删除,运行时服务对象不能查询
	pi = processEngine.getRuntimeService()//
					.createProcessInstanceQuery()//
					.processInstanceId(pid)//
					.singleResult();
	System.out.println("pi:"+pi);
	System.out.println("pid:"+pi.getId()+",activitiId:"+pi.getActivityId()+",ended:"+pi.isEnded());
	// 可以使用历史的记录查询
	HistoricProcessInstance hpi = processEngine.getHistoryService()//
						.createHistoricProcessInstanceQuery()//
						.processInstanceId(pid)//
						.singleResult();
	System.out.println("pid:"+hpi.getId());
	// 3.使用断言,检测结果,判断流程执行是否和自己想象的一样
	System.out.println("流程正常执行!");
}

3. 总结

1):结束节点没有出口
2):其他节点有一个或多个出口。
如果有一个出口,则代表是一个单线流程;
如果有多个出口,则代表是开启并发流程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值