`

研究JBPM的用法

阅读更多

1 将JBPM的配置文件打包成ZIP,并从zip中解出来,然后导入到数据库去。

  ZipInputStream zipInputStream = new ZipInputStream(LoadClassFromArchieve.class.getResourceAsStream("simpleProcess.war"));
  JbpmConfiguration jbpmConfiguration = JbpmConfiguration.getInstance();
  JbpmContext jbpmContext = jbpmConfiguration.createJbpmContext();
  try {
   //   ProcessDefinition processDefinition = ProcessDefinition.parseParZipInputStream(zipInputStream);
   //   jbpmContext.deployProcessDefinition(processDefinition);
   GraphSession grapSession = jbpmContext.getGraphSession();
   ProcessDefinition processDefinition = grapSession.findLatestProcessDefinition("simple");
   grapSession.deleteProcessDefinition(processDefinition);
  } catch (Exception e) {
    e.printStackTrace();
  }finally{
    jbpmContext.close();
    zipInputStream.close();
  }

 
2 Jbpm的一个流程开始代码。

 //jbpmContext是用来保准Hibernate 事务的,主要是和事务打交道。
 JbpmContext jbpmContext = JbpmConfirguration.CreateJbpmContext();
 try{
    GraphSession graphSession = jbpmContext.getGraphSession();
    ProcessDefinition pdf = graphSession.findLastestProcessDefinition("processDefinistion");
    pi.getContextInstance().createVariable("newVariable",newVariable);
    pi.signal();
    jbpmContext.save(pi);
 }finally{
     jbpmContext.close();
 }

 
3 怎么从数据库得到一个ProcessIntance。
 将ProcessInstanceId作为参数放在订单里面,里面记录了订单当前的所处的jbpm的状态。
 从ProcessIntance中得到TaskInstance,调用TaskIntance.end("applyRefund");就可以将流程走下去。
 
4  Token的作用是什么。
  ProcessInstance中RootToken的作用是什么。
  Node在JBPM中处的位置
  Node代表的是TaskNode,Decision和Node,表示流程所处的一个状态,可以在Node上挂Task或Action的回调函数。完成业务自己的功能。
  TaskIntance的作用是什么?


5 Profile.enter("流程开始!");将执行的时间,保存在一个ThreadLocal里面,最后才用StringBuilder将其统计出来。
 
7 怎么根据流程名字,直接得到将当前的ProcessIntance在内存中重建。

 Node curNode = processDefinition.getNode("总经理审批");
 processIntance.getRootToken().setNode(curNode):
 processIntance.signal();//触发状态转移。


8   fwei只用了一个表来保存流程的当前状态,主要保存的有:
 流程的业务ID,业务Type,ProcessDefinition名,ProcessDefinition版本,流程的上下文参数,比如本流程需要借款,借款的金额,借款的单位,会表示成Map,dump成 名值对 数据库的Process_Context字段中去。
 
9 错误输入:"流程["+processName+"]不存在!";

19 iBatis 可能需要写点小程序来把大部分情况用熟悉。包括如何搭建环境,如何写SqlMap DAO。
 
10 开发工程师的职责:
理解交易三期的商业需求和产品的方向和目标。
撰写系统UC,完整描述系统过程,边界条件,输入输出等,对具体实现的功能需求负责;
撰写系统设计说明书;
撰写系统设计文档,对系统设计方案负责;
写单元测试;
编码实现;

 

11  将Map的Key按字符串顺序排列。
List<String> keys = new ArrayList<String>(params.keySet());
Collections.sort(keys);


 

分享到:
评论

相关推荐

    JBPM4 学习使用总结

    1. **官方文档**:JBPM4的官方文档详尽介绍了其架构、API和使用方法,是学习的重要参考资料。 2. **示例项目**:通过官方提供的示例项目,可以快速理解JBPM4的基本用法。 3. **社区与论坛**:如ITEYE博客中的...

    jbpm3.1中文文档

    【jbpm3.1中文文档】是一份详细阐述jbpm工作流程引擎的资源,它包含了大量的信息,旨在帮助用户理解和掌握jbpm 3.1版本的核心功能和使用方法。jbpm是一个开源的工作流程管理系统,它提供了强大的业务流程建模、执行...

    jBPM4工作流示例jbpmDemo

    **jbPM4工作流示例jbpmDemo**是一款基于jBPM4的工作流管理系统实例,旨在帮助用户深入了解和掌握jBPM4工作流引擎的使用方法。jBPM4是一款强大的开源工作流管理系统,它提供了流程建模、执行以及监控等功能,广泛应用...

    jbpm中文用户指南

    BPMN是一种图形化表示业务流程的方法,jbpm的用户指南会详细介绍如何使用BPMN符号来设计流程图,包括开始事件、结束事件、任务、网关、事件和数据对象等,以及它们在jbpm中的具体实现。 3. **jbpm工作流** 工作流...

    JBPM范例 可以运行 简单易懂 快速掌握JBPM

    1. **流程建模**:JBPM使用BPMN 2.0(Business Process Model and Notation)标准,这是一种图形化表示业务流程的方法,允许开发者用直观的图表来设计流程。BPMN符号丰富,涵盖了各种流程控制结构,如任务、事件、...

    jbpm实例(带jar)

    通过研究这些实例,开发者不仅可以掌握jbpm的基本用法,还能深入了解如何将jbpm集成到实际项目中,实现高效、灵活的业务流程管理。对于想要涉足或提升在业务流程管理领域技能的Java开发者来说,这是一个非常有价值的...

    jbpm3.2.2工作流入门例子

    通过深入研究这个jbpm3.2.2入门例子,你不仅可以了解jbpm的基本概念和使用方法,还能掌握如何在实际项目中应用工作流管理,提升你的企业级应用开发能力。这个例子为你提供了一个动手实践的平台,通过运行和修改代码...

    jbpm教程3.0中文版

    jbpm教程3.0中文版是针对这个早期版本的详细指南,旨在帮助开发者和业务分析师理解并掌握jbpm的核心功能和用法。 jbpm的主要特性包括: 1. **流程建模**:jbpm支持BPMN 2.0标准,这是一种业务流程建模语言,允许...

    基于JBPM的工作流管理系统的研究与设计

    通过深入研究JBPM工作流引擎及其在工作流管理系统中的应用,本文成功地设计并实现了一个高效的工作流管理系统。该系统不仅提高了基于流程定义的信息系统的开发效率,还为业务自动化提供了强有力的支持。未来的研究...

    jbpm4.0三个例子

    学习这三个示例,开发者不仅可以了解jbpm4的基本用法,还能掌握如何在真实项目中集成和使用工作流管理系统。对于标签中提到的"java",这表明示例代码是用Java语言编写的,因此需要一定的Java基础。而"工作流"则意味...

    JBPM源码包,包含JBPM的源代码

    通过深入研究这个源码包,开发者可以更好地掌握JBPM的使用技巧,提升业务流程管理的开发能力。无论是对流程的定制、优化,还是对系统的扩展和集成,都有极大的帮助。在实际项目中,结合源码理解和文档学习,能快速...

    jbpm4.3 中文文档

    中文文档的详细内容将涵盖以上各个部分,包括安装指南、快速入门、API参考、案例研究、常见问题解答等,帮助读者逐步掌握jbpm4.3的使用方法和最佳实践。通过深入学习,开发者不仅能熟练操作jbpm4.3,还能理解业务...

    jbpm4.4学习教程

    流程定义使用BPMN 2.0标准语言,这是一种图形化表示方法,能够清晰地描绘出业务流程的各个步骤和决策点。通过jbpm,你可以创建这些流程模型,并将它们转换为可执行的代码。 流程实例管理是jbpm中的关键功能,它负责...

    jbpm4.4项目测试源码下载,

    通过下载并研究jbpm4.4的测试源码,开发者能够掌握如何使用jbpm进行流程设计、部署、执行以及监控,从而更好地利用这一强大工具解决企业的业务流程自动化需求。在实践中不断探索,将有助于提升你在BPM领域的专业技能...

    JBPM案例详解(全)

    提供的“JBPM案例详解”包含了一系列示例的源代码,读者可以通过阅读和实践这些代码,更深入地理解JBPM的工作原理和用法。每个案例都有清晰的注释和说明,有助于读者快速上手和解决问题。 总结,JBPM作为一款强大的...

    JBPM流程框架源码

    **JBPM流程框架源码详解** JBPM,全称Java Business Process ...通过深入研究"leave"示例,你可以逐步掌握JBPM的使用方法,从而在实际项目中发挥其优势。不断实践和探索,将使你对业务流程管理有更深刻的理解。

    jbpm.rar_jbpm_jbpm 3.0 books

    对于开发者来说,这是一个宝贵的资源,可以帮助他们快速掌握jbpm的使用方法和最佳实践。 www.pudn.com.txt可能是一个链接或引用来源的文本文件,通常在分享资源时,会包含一些下载链接或者发布者的相关信息。在本例...

    JBPM4.3中文 用户手册

    综上所述,《JBPM 4.3中文用户手册》是一本全面介绍JBPM 4.3版本工作流管理系统使用方法的手册,覆盖了从基础知识到高级特性的各个方面,旨在帮助开发者和技术人员快速掌握并有效利用JBPM的各项功能。

    JBPM3学习笔记

    在本文中,我们将深入探讨JBPM3的核心概念、功能和使用方法,以帮助你更好地理解和应用这一强大的工具。 **一、JBPM3简介** JBPM3是JBPM系列的第三个主要版本,它在早期版本的基础上增加了许多新特性,如图形化的...

Global site tag (gtag.js) - Google Analytics