jbpm学习三

来源:互联网 发布:上海程序员培训学校 编辑:程序博客网 时间:2024/06/10 09:50
二.excutionService对象

excutionService对象是processEngine.getExecutionService()获得的。

1.启动流程实例:

启动流程实例有两种方式:

(1)通过实例pdid启动:executionService.startProcessInstanceById('holiday888-1')



(2)通过实例pdkey启动:executionService.startProcessInstanceByKey("holiday888")

pdid是流程定义编号,pdkey是流程实例关键字,这两个字都是存在jbpm4_deloyprop表中,pdid是唯一的,对应唯一的业务流程定义,pdkey是可以重复的,如果根据key启动流程,默认启动相同key最高版本流程。

启动流程对表的影响:

(1)jbpm4_execution:流程实例表(存放正在运行的流程实例信息),每次新建一条流程实例,都会保存一条记录(实际是两条)。

(2)jbpm4_hist_procinst:流程实例历史记录表(无论流程实例是否正在运行,历史记录都会存在对应流程信息)。

(3)jbpm4_property:启动流程实例,该表ID递增10000。(插入数据该表ID就会递增10000)。

(4)jbpm4_task:任务表。

启动流程实例代码:

ProcessEngine buildProcessEngine = new Configuration().buildProcessEngine();ExecutionService executionService = buildProcessEngine.getExecutionService();executionService.startProcessInstanceById("holiday888-1");executionService.startProcessInstanceByKey("holiday888");

2.流程实例信息查询:

<span style="white-space:pre"></span>ProcessEngine buildProcessEngine = new Configuration().buildProcessEngine();ExecutionService executionService = buildProcessEngine.getExecutionService();List<ProcessInstance> list = executionService.createProcessInstanceQuery().list();System.out.println("正在运行流程实例个数:" + list.size());for(ProcessInstance processInstance : list){System.out.println("流程实例编号:" + processInstance.getId());System.out.println("正在执行活动节点:" + processInstance.findActiveActivityNames());}
查询jbpm4_execution表。

3.流程实例监控操作:

<span style="white-space:pre"></span>ProcessEngine buildProcessEngine = new Configuration().buildProcessEngine();ExecutionService executionService = buildProcessEngine.getExecutionService();String executionId = "holiday888.10001";String signalName = "to 部门经理审批";executionService.signalExecutionById(executionId, signalName);      //executionService.endProcessInstance(executionId, ProcessInstance.STATE_ENDED); 结束该流程,jbpm4_execution中就不存在该流程实例了


executionId是表jbpm4_execution表中ID字段,signalName是发往的节点名称,对应xml配置文件的name属性,执行完上述代码后,jbpm4_execution表activityname字段变成

'部门经理审批'。








0 0
原创粉丝点击