本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google
链接:

JBPM入门系列文章:

JBPM4入门——1.jbpm简要介绍

JBPM4入门——2.在eclipse中安装绘制jbpm流程图的插件

JBPM4入门——3.JBPM4开发环境的搭建

JBPM4入门——4.封装流程管理的工具类(JbpmUtil)

JBPM4入门——5.流程定义的发布、查询、删除

JBPM4入门——6.流程实例的创建和执行

JBPM4入门——7.等待节点的单条线手动执行

JBPM4入门——8.等待节点的分支执行

JBPM4入门——9.自动节点单线执行

package com.test.test;

import java.util.Iterator;
import java.util.List; import org.jbpm.api.ProcessDefinition;
import org.jbpm.api.ProcessDefinitionQuery;
import org.jbpm.api.ProcessInstance; import com.test.util.JbpmUtil; public class Test { /**
* 流程定义的发布
* @param jpdlFileName 流程定义的文件名。例如:hello.jpdl.xml
*/
public void deploy(String jpdlFileName){
JbpmUtil.getRepositoryService()
.createDeployment()
.addResourceFromClasspath(jpdlFileName)
.deploy();
} /**
* 流程定义的查询
*/
public void query(){
ProcessDefinitionQuery query
= JbpmUtil.getRepositoryService().createProcessDefinitionQuery();
List<ProcessDefinition> list = query.list();
for (Iterator iterator = list.iterator(); iterator.hasNext();) {
ProcessDefinition processDefinition = (ProcessDefinition) iterator
.next();
/**
* id:流程定义的id
* key:就是流程定义的文件名称 、相同的key下面有不同的id
* deploymentId:表达的是这次动作发布的时候数据库中存储的那条记录的主键id
*/
System.out.println("id:"+processDefinition.getId());
System.out.println("key:"+processDefinition.getKey());
System.out.println("deploymentId:"+processDefinition.getDeploymentId());
}
} /**
* 流程定义的删除
* @param deploymentId
*/
public void del(String deploymentId){
//deleteDeploymentCascade 级联删除:删除流程定义的时候把流程实例也删了..
JbpmUtil.getRepositoryService().deleteDeploymentCascade(deploymentId);
} /**
* 创建流程实例
* @param key 流程定义的key
* @return 返回创建的流程实例
*/
public ProcessInstance createInstance(String key){
//虽然说多个实例的key相同。但是startProcessInstanceByKey通过key来启动的话会默认找到最新版本的流程定义、并创建相应的流程实例
return JbpmUtil.getExecutionService().startProcessInstanceByKey(key);
} /**
* 执行流程实例 :只按线条的顺序执行
* @param processInstanceId
* @return
*/
public ProcessInstance execute(String processInstanceId){
return JbpmUtil.getExecutionService().signalExecutionById(processInstanceId); } /**
* 执行流程实例2:通过transition 指向的路径根据名字执行(to state1 to state2 to end1......)
* @param processInstanceId
* @return
*/
public ProcessInstance execute(String processInstanceId,String transitionName){
return JbpmUtil.getExecutionService().signalExecutionById(processInstanceId,transitionName); } public static void main(String[] args) {
Test test = new Test();
test.deploy("hello.jpdl.xml");//流程定义的发布
test.createInstance("hello");//创建流程实例
test.execute("hello.30001");//执行流程实例:执行的时候是根据jbpm4_execution表中的ID字段来执行的 }
}
  • 大小: 27.7 KB

JBPM4入门——7.等待节点的单条线手动执行的更多相关文章

  1. JBPM4入门——8.等待节点的分支执行

    JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流程图的插件 JBPM4入门——3.JBPM4开发环境的搭建 JBPM4入门—— ...

  2. JBPM4入门——9.自动节点单线执行

    JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流程图的插件 JBPM4入门——3.JBPM4开发环境的搭建 JBPM4入门—— ...

  3. JBPM4入门——6.流程实例的创建和执行

    本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google 链接: JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流 ...

  4. JBPM4入门——5.流程定义的发布、查询、删除

    本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google 链接: JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流 ...

  5. JBPM4入门——4.封装流程管理的工具类(JbpmUtil)

    本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google 链接: JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流 ...

  6. JBPM4入门——3.JBPM4开发环境的搭建

    本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google 链接: JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流 ...

  7. JBPM4入门——2.在eclipse中安装绘制jbpm流程图的插件

    本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google 链接: JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流 ...

  8. JBPM4入门——1.jbpm简要介绍

    本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google 链接: JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流 ...

  9. GMF中,删除节点和连线的另一种实现

    问题 在GMF中,如果需要programmatically删除节点或连线,在google中我们很容易搜索到<GMF中,删除节点和连线的实现>一文(我并不确定这是原创作者的原始链接),很多人 ...

随机推荐

  1. MongoDB (一) MongoDB 介绍

    MongoDB 是一个跨平台的,面向文档的数据库,提供高性能,高可用性和可扩展性方便. MongoDB工作在收集和文件的概念. 数据库 数据库是一个物理容器集合.每个数据库都有自己的一套文件系统上的文 ...

  2. 五分钟轻松搞定产品需求文档!这可能史上最全PRD文档模板

    本文由  @JustWu 原创发布于社区 为什么写这篇文章? 第一:写PMCAFF的PRD文档,大家都是用户,比较好参考与理解,方便大家来找我写的不好的地方. 第二:我在自学PRD文档的编写过程中,总 ...

  3. 转载网易博客:整理各大网站让网站变灰的css代码

    2013-07-21 15:06:47 北京时间2013年4月20日8时02分四川省雅安市芦山县(北纬30.3,东经103.0)发生7.0级地震.震源深度13公里.各大网站将其网站变灰,本人整理了下部 ...

  4. Two Sigma OA

    刚做了两道Two Sigma OA. 还是两道老题, Friend Cycle和Longest Chain. Friend Cycle可以用Union Find来做.优化的时候因为矩阵是沿对角线对称, ...

  5. notepad++使用技巧及插件汇总

    NppAutoIndent 自动缩进CCompletion 自动补全.TextFX 插件nppFTP 运行程序 ============================================ ...

  6. linux RTC 驱动模型分析【转】

    转自:http://blog.csdn.net/yaozhenguo2006/article/details/6824970 RTC(real time clock)实时时钟,主要作用是给Linux系 ...

  7. asp.net mvc4使用百度ueditor编辑器

    原文  http://www.cnblogs.com/flykai/p/3285307.html    已测试 相当不错 前言 配置.net mvc4项目使用ueditor编辑器,在配置过程中遇见了好 ...

  8. JavaScript —— 局部变量和全局变量

    JS的全局变量有3种声明方式: 1.Function 外 var v_myVar; 2.Function 内 v_myVar; 3.window.v_myVar window.v_myVar 全局变量 ...

  9. wget https://github.com/xxx/yyy/archive/${commit_hash}.zip

    wget https://github.com/xxx/yyy/archive/${commit_hash}.zip

  10. POJ -3050 Hopscotch

    http://poj.org/problem?id=3050 给定一个5×5矩阵,问选6个数的不同排列总数是多少! 二维的搜索,注意要判重,数据量很小,直接用map就好. #include<cs ...