- 浏览: 78901 次
文章分类
- 全部博客 (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 1013原帖地址:http://www.cnblogs.com/suf ... -
我要喷一个自认为很垃圾的网站架构 - 老赵【苏州】
2013-06-28 12:01 1078原帖地址:http://www.cnblogs.com/lao ... -
[翻译] Oracle Database 12c 新特性Multitenant - Cheney Shue
2013-06-28 11:43 588原帖地址:http://www.cnblogs.com/ese ... -
memcahd 命令操作详解 - 阿正-WEB
2013-06-28 11:37 428原帖地址:http://www.cnblogs.com/azh ... -
面向过程的代码符合大众的思维方式吗? - 史蒂芬.王
2013-06-27 10:28 547原帖地址:http://www.cnblogs.com/ste ... -
面向过程的代码符合大众的思维方式吗? - 史蒂芬.王
2013-06-27 10:28 523原帖地址:http://www.cnblogs.com/ste ... -
RPG游戏之组队测试 - zthua
2013-06-27 10:22 517原帖地址:http://www.cnblogs.com/zth ... -
IT人们给个建议 - SOUTHER
2013-06-26 14:06 486原帖地址:http://www.cnblogs.com/sou ... -
Java向前引用容易出错的地方 - 银河使者
2013-06-26 14:00 455原帖地址:http://www.cnblogs.com/nok ... -
使用Func<T1, T2, TResult> 委托返回匿名对象 - 灰身
2013-06-26 13:54 759原帖地址:http://www.cnblo ... -
【web前端面试题整理03】来看一点CSS相关的吧 - 叶小钗
2013-06-25 10:45 734原帖地址:http://www.cnblogs.com/yex ... -
Windows 8 动手实验系列教程 实验6:设置和首选项 - zigzagPath
2013-06-25 10:27 574原帖地址:http://www.cnblogs.com/zig ... -
闲聊可穿戴设备 - shawn.xie
2013-06-25 10:21 514原帖地址:http://www.cnblo ... -
CentOS下Mysql安装教程 - 小学徒V
2013-06-23 15:24 560原帖地址:http://www.cnblogs.com/xia ... -
vmware安装ubuntu12.04嵌套安装xen server(实现嵌套虚拟化) - skyme
2013-06-23 15:18 793原帖地址:http://www.cnblogs.com/sky ... -
之前专门为IE6、7开发的网站如何迁移到IE10及可能遇到的问题和相应解决方案汇总 - 海之澜
2013-06-23 15:12 899原帖地址:http://www.cnblogs.com/wuz ... -
Android学习笔记--解析XML之SAX - 承香墨影
2013-06-23 15:01 363原帖地址:http://www.cnblo ... -
SQL Server 性能优化之——T-SQL TVF和标量函数
2013-06-19 09:32 613原帖地址:http://www.cnblogs.com/Boy ... -
Nginx学习笔记(二) Nginx--connection&request
2013-06-19 09:26 605原帖地址:http://www.cnblogs.com/cod ... -
从郭美美霸气侧漏看项目管理之项目经理防身术
2013-06-19 09:20 460原帖地址:http://www.cnblogs.com/had ...
相关推荐
JBPM4.4学习文档.ppt
jbpm4.4流程图
【】(01)jbpm4.4简介【】(02)JBPM4.4开发环境搭建【】(03)jbpm4.4环境搭建续【】(04)jbpm4.4配置文件和开发前准备【】(05)jbpm4.4部署流程发起流程实例【】(06)jbpm4.4完成任务查看任务当前节点【】(07)jbpm4.4 资源...
jbpm4.4的学习资料 ,有pdf文件和ppt文件,适用于初学者的学习
jBPM4.4课程文档
利用JBPM4.4编写的完整请假流程,涉及申请人填写,经理审批以及决策节点后的老板审批,加入SSH2与JBPM4.4的jar包过后部署好就可以用,只用修改applicationContext.xml中的数据库相关信息即可!
父项目中,根据Maven的规范,配置了相关依赖包的引用,包括:Jbpm4.4的引用包引用、Junit4.9的测试包引用,hibernate的引用包,以及应用服务器Jboss的Client引用等。 接口中,提供了部署流程、创建实例、获得当前...
JBPM4.4之HelloWorld示例
jbpm4.4好的学习资料找不到的朋友的挚爱,本人花了N久时间收录的!
JBPM4.4报销流程管理Demo(内附学习资料和sql文件),启动项目之前先运行UserController.java里面的面方法建立财务组,项目启动之后会自动建立18张表
jbpm4.4整合s2sh 请假流程例子
jbpm4.4 jar 包下载jbpm4.4 jar 包下载jbpm4.4 jar 包下载jbpm4.4 jar 包下载
4.6 JBPM在MyEclipse画流程图时出现乱码: 14 5 核心API 14 5.1ProcessEngine 14 5.2RepositoryService 15 5.3ExecutionService 16 5.4TaskService 16 5.5ProcessDefinition 16 5.6ProcessInstance 16 5.7Execution ...
jbpm4.4下载地址
jbpm4.4 schema.xsd jbpm4.4 schema.xsd jbpm4.4 schema.xsd jbpm4.4 schema.xsd jbpm4.4 schema.xsd
首先感谢原创,相关信息请查询原创。... 看到好多朋友找不到相应的jar包,致使jbpm4.4的学习遇到困难,现提供除jbpm4.4自身jar包外的所有包,以便大家更快的学习jbpm4.4,希望能帮朋友们少走弯路!
终于把jbpm4.4上传完了,由于csdn最大容量才50m,所以我把这个jar包分成三个部分。
JBPM5工作流引擎 S2SH+JBPM4.4开发工作流的一个完整的请假流程例子。带有文档教程和所有源码+JAR包。在网上找了半天jbpm6\jbpm7的资料,都很少。所以 环境:Myeclipse2015 JDK1.7 mysql 5.0 Struts2+Spring3.1 1...
JBPM4.4与SSH2之整合(附完整源码) 这些天,想着把jbpm4.4与ssh2整合一下,由于之前从来没用过jbpm,也不知道各版本之间会有什么差异(经过网上的收集对比,还真有些差异),整合起来,还真是有些步履艰难。收集了...
jbpm4.4写的流程引擎例子,互相学习交流,直接导入eclipse中就可以了。这个是个web工程,需要web容器,我用的是tomcat6.