您的位置:首页 > 产品设计 > 产品经理

JBoss 系列三十四:jBPM5示例之 Looping

2013-11-01 09:27 465 查看
Looping流程如下图所示:



如上图所示,Looping流程有三个Script Task节点,Init, Loop, Done。

Init节点是Loop开始节点,它初始化两个变量count和i,分别赋值5和0,如下

System.out.println("Loop started");
kcontext.setVariable("count", 5);
kcontext.setVariable("i", 0);


Loop节点每次输出变量i的值,并给变量i加1,当变量i小于count的值5时,执行循环,如下

System.out.println("  i = " + i);
kcontext.setVariable("i", i+1);


Done节点输出Looping流程结束字符串,如下

System.out.println("Loop completed");


Looping流程运行代码:https://github.com/kylinsoong/.../looping/LoopingStart.java
Looping流程:https://github.com/kylinsoong/.../quickstarts/looping.bpmn

运行org.jbpm.quickstarts.looping.LoopingStart可运行Looping流程,LoopingStart代码如下

package org.jbpm.quickstarts.looping;

import org.drools.runtime.StatefulKnowledgeSession;
import org.jbpm.quickstarts.QuickStartBase;

public class LoopingStart extends QuickStartBase{

	public void test() {
		StatefulKnowledgeSession ksession = createKnowledgeSession("quickstarts/looping.bpmn");
		ksession.startProcess("org.jbpm.quickstarts.looping");
	}
	
	public static void main(String[] args) {
		new LoopingStart().test();
	}

}


运行Looping流程输出结果如下:

Loop started
  i = 0
  i = 1
  i = 2
  i = 3
  i = 4
Loop completed
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: