- 浏览: 83754 次
文章分类
- 全部博客 (136)
- 我的技术资料收集 (98)
- 具体技术 (1)
- 的技术资料收集 (4)
- All Articles (1)
- 机器学习 Machine Learning (1)
- 网络编程 (1)
- java (2)
- ava (1)
- 零散技术 (1)
- C# (3)
- 技术资料收集 (1)
- CQRS (1)
- 数据库技术(MS SQL) (1)
- .Net微观世界 (1)
- Oracle SQL学习之路 (1)
- C/C++ (1)
- JS/JQ (1)
- Js封装的插件/实例/方法 (2)
- 敏捷个人 (2)
- Javascript (1)
- 程序设计---设计模式 (1)
- Bug (1)
- 未知分类 (1)
- 程序设计 (1)
- Sharepoint (1)
- Computer Graphic (1)
- IT产品 (1)
- [06]JS/jQuery (1)
- [07]Web开发 (1)
- .NET Solution (1)
- Android (3)
- 机器学习 (1)
- 系统框架设计 (1)
- Others (1)
- 算法 (1)
- 基于Oracle Logminer数据同步 (1)
- 网页设计 (1)
- 原创翻译 (1)
- EXTJS (1)
- Jqgrid (1)
- 云计算 (1)
最新评论
- 我坚信初学者更加明白初学者学习的困难在哪里。
- 我坚信最好的学习资料是自己亲手记录。
- 我坚信最好的学习方法是自己动手。
- 我坚信最好的检验方式就是能把自己所学到的东西转手教给别人。
-
-----作者: 高鹏
教为学:JBPM4.4学习之路(三):流程部署的查询、删除、流程图查看
前言
数据库有增删改查。
流程部署有什么功能?
JBPM的操作归根结底还是对数据库进行操作。所以理论上,我们对数据库所能执行的操作,流程部署的API都能为我们提供。
我们先上一篇博文所提到的四张表的ER图。
一句话,再怎么强调表结构也不为过。
这节课也是对这几张表的操作。
随着我们的深入学习,这张ER图会越来越大,当所有的表都在这张图里面的时候,我们也学得差不多了。
查询
在查询之前我们先看一张图。
这张图在哪里与数据库中的哪一张表想对应?
1、查询所有部署。
代码:
- @Test
- public void testListAllDeploy(){
- ProcessEngine processEngine = Configuration.getProcessEngine();
- List<Deployment> listDeployments = processEngine.getRepositoryService()
- .createDeploymentQuery()
- .list();
- for (Deployment deployment : listDeployments) {
- System.out.print("ID:"+deployment.getId());
- System.out.println(" STATE:"+deployment.getState());
- }
- }
API详解:
RepositoryService接口:
方法:createDeploymentQuery()
获取一个DeploymentQuery接口。
DeploymentQuery查询接口:
方法:list()
获取Deployment集合。
Deployment:接口。
String getId();
String getName();
long getTimestamp();
String getState();
不解释。
数据库操作:
操作
表名
次数
备注
查询
JBPM4_PROPERTY
2
查询
JBPM4_DEPLOYMENT
1
2、根据流程ID去查看部署。
代码:
- @Test
- public void testGetDeployByID(){
- ProcessEngine processEngine = Configuration.getProcessEngine();
- Deployment deployment = processEngine.getRepositoryService()
- .createDeploymentQuery()
- .deploymentId("10001")
- .uniqueResult();
- System.out.print("ID:"+deployment.getId());
- System.out.println(" STATE:"+deployment.getState());
- }
API详解:
DeploymentQuery deploymentId(String id);
根据流程ID查询部署流程。
Deployment uniqueResult();
返回唯一的流程部署结果。
数据库操作:
操作
表名
次数
备注
查询
JBPM4_PROPERTY
2
查询
JBPM4_DEPLOYMENT
1
3、查询所有的流程定义。
源码:
- @Test
- public void testAllPD(){
- ProcessEngine processEngine = Configuration.getProcessEngine();
- List<ProcessDefinition> pdList = processEngine.getRepositoryService()
- .createProcessDefinitionQuery()
- .list();
- for (ProcessDefinition processDefinition : pdList) {
- System.out.print("ID:"+processDefinition.getId());
- System.out.print("======Key:"+processDefinition.getKey());
- System.out.print("======Name:"+processDefinition.getName());
- System.out.println("======Version:"+processDefinition.getVersion());
- }
- }
我觉得没什么API必要详解。因为依样画葫芦也能知道这些API有很么意思。
操作
表名
次数
备注
查询
JBPM4_PROPERTY
2
查询
JBPM4_DEPLOYMENT
JBPM4_DEPLOYPROP
1
查询
JBPM4_LOB
1
查询
JBPM4_DEPLOYPROP
1
查询
JBPM4_DEPLOYMENT
1
查询
JBPM4_LOB
1
查询
JBPM4_DEPLOYPROP
1
查询
JBPM4_DEPLOYMENT
1
查询
JBPM4_LOB
1
查询
JBPM4_DEPLOYPROP
1
其他的几种查询方式就一一表述了,依样画葫芦吧。
查看流程图
查看流程图第一件事就是从数据库中把流程图取出来。
代码如下:
- @Test
- public void testShowImage() throws Exception{
- ProcessEngine processEngine = Configuration.getProcessEngine();
- InputStream inputStream = processEngine.getRepositoryService()
- .getResourceAsStream("20001", "qingjia.png");
- OutputStream outputStream = new FileOutputStream("c:"+File.separator+"qingjia.png");
- int b;
- while ((b=inputStream.read())!=-1) {
- outputStream.write(b);
- }
- inputStream.close();
- outputStream.close();
- }
getResourceAsStream("20001", "qingjia.png")这个应该不需要解释。
操作
表名
次数
备注
查询
JBPM4_PROPERTY
2
查询
JBPM4_DEPLOYMENT
1
查询
JBPM4_LOB
1
删除部署
代码:
- @Test
- public void testDelete() {
- ProcessEngine processEngine = Configuration.getProcessEngine();
- processEngine.getRepositoryService().deleteDeployment("10001");
- }
deleteDeployment
deleteDeploymentCascade
后者会把子流程一起删除!
操作
表名
次数
备注
查询
JBPM4_PROPERTY
2
查询
JBPM4_DEPLOYMENT
JBPM4_DEPLOYPROP
1
查询
JBPM4_LOB
1
查询
JBPM4_DEPLOYMENT
1
查询
JBPM4_LOB
1
查询
JBPM4_DEPLOYPROP
1
查询
JBPM4_EXECUTION
1
更新
JBPM4_LOB
1
更新
JBPM4_DEPLOYPROP
1
删除
JBPM4_LOB
2
删除
JBPM4_DEPLOYPROP
4
删除
JBPM4_DEPLOYMENT
1
总结
很多的时候,所谓的流程管理本质离不开对这几张表的增删改查。
所以,你怎么熟悉这几张表都不过分。
发表评论
-
C#WebBrowser控件使用教程与技巧收集--苏飞收集 - sufeinet
2013-06-28 12:07 1067原帖地址:http://www.cnblogs.com/suf ... -
我要喷一个自认为很垃圾的网站架构 - 老赵【苏州】
2013-06-28 12:01 1126原帖地址:http://www.cnblogs.com/lao ... -
[翻译] Oracle Database 12c 新特性Multitenant - Cheney Shue
2013-06-28 11:43 620原帖地址:http://www.cnblogs.com/ese ... -
memcahd 命令操作详解 - 阿正-WEB
2013-06-28 11:37 469原帖地址:http://www.cnblogs.com/azh ... -
面向过程的代码符合大众的思维方式吗? - 史蒂芬.王
2013-06-27 10:28 593原帖地址:http://www.cnblogs.com/ste ... -
面向过程的代码符合大众的思维方式吗? - 史蒂芬.王
2013-06-27 10:28 558原帖地址:http://www.cnblogs.com/ste ... -
RPG游戏之组队测试 - zthua
2013-06-27 10:22 557原帖地址:http://www.cnblogs.com/zth ... -
IT人们给个建议 - SOUTHER
2013-06-26 14:06 523原帖地址:http://www.cnblogs.com/sou ... -
Java向前引用容易出错的地方 - 银河使者
2013-06-26 14:00 494原帖地址:http://www.cnblogs.com/nok ... -
使用Func<T1, T2, TResult> 委托返回匿名对象 - 灰身
2013-06-26 13:54 800原帖地址:http://www.cnblo ... -
【web前端面试题整理03】来看一点CSS相关的吧 - 叶小钗
2013-06-25 10:45 783原帖地址:http://www.cnblogs.com/yex ... -
Windows 8 动手实验系列教程 实验6:设置和首选项 - zigzagPath
2013-06-25 10:27 619原帖地址:http://www.cnblogs.com/zig ... -
闲聊可穿戴设备 - shawn.xie
2013-06-25 10:21 562原帖地址:http://www.cnblo ... -
CentOS下Mysql安装教程 - 小学徒V
2013-06-23 15:24 608原帖地址:http://www.cnblogs.com/xia ... -
vmware安装ubuntu12.04嵌套安装xen server(实现嵌套虚拟化) - skyme
2013-06-23 15:18 836原帖地址:http://www.cnblogs.com/sky ... -
之前专门为IE6、7开发的网站如何迁移到IE10及可能遇到的问题和相应解决方案汇总 - 海之澜
2013-06-23 15:12 949原帖地址:http://www.cnblogs.com/wuz ... -
Android学习笔记--解析XML之SAX - 承香墨影
2013-06-23 15:01 408原帖地址:http://www.cnblo ... -
SQL Server 性能优化之——T-SQL TVF和标量函数
2013-06-19 09:32 670原帖地址:http://www.cnblogs.com/Boy ... -
Nginx学习笔记(二) Nginx--connection&request
2013-06-19 09:26 666原帖地址:http://www.cnblogs.com/cod ... -
从郭美美霸气侧漏看项目管理之项目经理防身术
2013-06-19 09:20 499原帖地址:http://www.cnblogs.com/had ...
相关推荐
2. **设计工具**:jbpm4.4提供了图形化的流程建模工具,如jBPM Designer,允许用户通过拖拽方式创建和编辑流程图。 3. **工作流程定义语言(BPMN)**:jbpm4.4支持Business Process Modeling Notation (BPMN) 2.0...
jbpm4.4学习教程是一套专为初学者设计的教育资源,旨在帮助用户掌握jbpm这一业务流程管理(Business Process Management)框架的第4.4版本。jbpm是一款开源的Java平台工具,它允许开发者设计、执行和管理业务流程,...
在深入探讨jBPM 4.4的相关知识点之前,我们首先需要理解jBPM是什么以及它在企业级应用中的重要性。jBPM是“Java Business Process Model”的缩写,是一个开源的工作流引擎,用于执行业务流程管理(BPM)。它提供了...
jbpm4.4是JBoss Business Process Management Suite的第4.4版本,它是一个开源的工作流和业务流程管理系统,用于构建、部署和管理业务流程。本教程将深入探讨jbpm4.4中的核心功能,包括流程运转、驳回、分配组任务...
jbpm-4.4.zip是一个包含jbpm(Java Business Process Management)4.4版本的压缩文件,这是一款流行的工作流管理系统,专为管理和自动化业务流程而设计。jbpm项目始于2004年,旨在提供一个开源、轻量级、灵活且可...
在JBPM4.4版本中,开发者可以利用其提供的API和工具来设计、部署和执行复杂的业务流程。 首先,让我们深入了解一下JBPM4.4的核心特性: 1. **流程建模**:JBPM4.4支持BPMN(Business Process Modeling Notation)...
通过这个入门实例,开发者可以学习到如何使用jBPM4.4进行流程设计、部署和执行的基本操作,并逐步掌握其在实际项目中的应用。在实践中不断探索和深入,才能更好地利用jBPM4.4实现业务流程自动化,提高工作效率。
总结起来,这个项目是一个很好的学习资源,让初学者了解如何在Java EE环境中使用jbpm4.4构建和部署一个简单的请假流程应用。通过实际操作,可以掌握流程建模、工作流引擎使用、Web应用开发以及服务器配置等一系列...
【jbpm4.4项目】是一个基于JBPM4.4版本的工作流管理系统示例,它为初学者提供了深入了解和实践企业级工作流管理系统的入口。JBPM(Java Business Process Management)是一个开源的工作流和业务流程管理系统,它允许...
【JBPM4.4学习相关代码】涉及到的是企业级业务流程管理系统JBPM的第4.4版本。JBPM是一款开源的工作流管理系统,它提供了一整套解决方案,包括业务流程建模、部署、执行、监控以及集成。以下是关于JBPM4.4的一些关键...
【jbpm4.4用户手册中文版】是针对企业级工作流管理系统的详细介绍,主要针对jbpm 4.4版本。这个手册旨在帮助开发者、系统管理员以及业务分析师理解和使用jbpm来实现工作流程自动化。jbpm是一个开源的业务流程管理...
JBPM4.4 API,全称为Java Business Process Management 4.4 Application Programming Interface,是用于构建和管理业务流程的应用框架。这个API包含了JBPM4.4的所有核心组件和功能,使得开发者可以方便地进行工作流...
jbpm 4.4是该系统的一个特定历史版本,通常发布为多个部分(如part01、part02、part03等),以适应大文件的分片传输。 jbpm的核心特性包括: 1. **工作流建模**:jbpm支持BPMN 2.0标准,允许用户通过图形化界面...
1. **流程建模**:jbpm 4.4支持使用Eclipse BPMN2模型进行流程设计,使得流程图直观易懂,同时也支持XML直接导入导出。 2. **工作流引擎**:jbpm内含高效的工作流引擎,能够执行复杂的业务流程,并处理各种流程分支...
总的来说,jbpm4.4流程图和jpdl文件结合,为企业提供了强大的业务流程建模、执行和管理能力,帮助企业标准化业务流程,提升工作效率。理解并掌握如何使用和解读这些文件,对于进行流程自动化和优化至关重要。
**jbpm4.4入门编程小例子** ...通过学习这个入门编程小例子,你可以了解如何使用jbpm4.4定义流程、启动流程实例、执行任务以及监控流程状态。这将为你在实际项目中应用工作流管理打下坚实的基础。
jbpm4.4是JBoss企业级业务流程管理(Business Process Management)套件的一个版本,它提供了一整套工具和服务,用于设计、部署和执行业务流程。在这个“简单请假流程”中,我们可以深入理解jbpm4.4如何帮助开发者...
开发者可以通过jbpm提供的图形化工具(如jbpm Designer)来设计流程图,并将其转换为可执行的流程定义文件(.bpmn或.xml)。 2. **用户组**:在jbpm中,用户组是分配任务的重要概念。任务可以被分配给特定的用户组...
JBPM4.4是JBoss Business Process Management (BPM)平台的一个版本,它是一个开源的企业级BPM解决方案,用于设计、执行和管理业务流程。在这个完整的审批流程工程中,我们看到它采用Maven进行项目构建和依赖管理,...