Activiti工作流框架学习(二)——使用Activiti提供的API完成流程操作
来源:互联网 发布:阿里云邀请码获取 编辑:程序博客网 时间:2024/06/05 06:44
可以在项目中加入log4j,将logj4.properties文件拷入到src目录下,这样框架执行的sql就可以输出到到控制台,log4j提供的日志级别有以下几种:
Fatal error warn info debug trace
一、部署流程定义
1,在工程项目下创建源码文件夹process
2,在该文件下下面新创建一个工作流流程定义文件test1.bpmn(NewàActivit Diagram)
3,在test1.bpmn文件定义请假流程或者是报销流程
4,测试代码
部署流程定义步骤:
1) 首先获得默认的流程引擎getDefaultProcessEngine(),在创建时会自动加载classpath下得activiti-context.xml或者是activiti.cfg.xml
2) 通过流程引擎获取了一个RepositoryService对象也就是仓库服务对象
3) 由仓库的服务对象创建一个部署对象配置对象,用来封装部署环境的相关配置。
4) 这是一个链式编程,在部署配置对象中设置显示名,上传规则文件相对classpath的地址。
5) 部署,也是往数据库中存储流程定义的过程。
6) 这一步在数据库中将操作三张表:
a) act_re_deployment
存放流程定义的显示名和部署时间,每部署一次增加一条记录
b) act_re_procdef
存放流程定义的属性信息,部署每个新的流程定义都会在这张表中增加一条记录。
c) act_ge_bytearray
存储流程定义相关的部署信息。即流程定义文档的存放地。每部署一次就会增加两条记录,一条是关于bpmn规则文件的,一条是图片的(如果部署时只指定了bpmn一个文件,activiti会在部署时解析bpmn文件内容自动生成流程图)。两个文件不是很大,都是以二进制形式存储在数据库中。
二、查询流程定义
流程定义查询步骤:
1) 因为流程定义的信息存放在仓库中,所以应该获取RepositoryService。
2) 创建流程定义查询对象,可以在ProcessDefinitionQuery上设置查询过滤参数
3) 调用ProcessDefinitionQuery对象的list方法,执行查询,获得符合条件的流程定义列表
4) 由运行结果可以看出:
a) Key和Name的值为:bpmn文件process节点的id和name的属性值
b) key属性被用来区别不同的流程定义。
c) 带有特定key的流程定义第一次部署时,version为1。之后每次部署都会在当前最高版本号上加1
d) Id的值的生成规则为:{processDefinitionKey}:{processDefinitionVersion}:{generated-id},这里的generated-id是一个自动生成的唯一的数字
e) 重复部署一次,deploymentId的值以一定的形式变化
三、删除流程定义
四、启动流程实例什么是流程实例?根据一个流程定义具体的一次执行过程就是一个流程实例,一个流程定义对应多个流程实例(一对多关系),比如:已经定义了一个请假流程,张三同学走了一次该流程这就是启动一次流程实例
五、查询流程实例列表六、结束流程实例七、查询部署信息八、删除部署信息九、查询一次流程部署对应的文件名称(bpmn,png)和输入流十、获取流程定义图标(png文件)十一、 查询个人任务列表十二、 办理任务十三、 直接将流程想下执行一步管理员用户拥有该权限- Activiti工作流框架学习(二)——使用Activiti提供的API完成流程操作
- Activiti工作流框架学习(二)——使用Activiti提供的API完成流程操作
- Activiti工作流框架学习(二)——使用Activiti提供的API完成流程操作
- Activiti工作流框架学习(二)——使用Activiti提供的API完成流程操作
- Activiti工作流框架学习(二)——使用Activiti提供的API完成流程操作
- 学习Activiti工作流框架的API
- JAVAWEB开发之工作流详解(二)——Activiti核心API的使用(流程定义和流程实例的管理、流程变量、监听器...)以及与Spring的集成
- Activiti工作流学习(二)
- 工作流activiti 5.13基本的API流程
- 工作流框架--activiti(三)--流程变量
- 工作流Activiti的学习总结(五) activiti的API和虚拟工作流测试
- Activiti框架的工作流
- Activiti——工作流程-核心API(二)
- Activiti工作流进阶(十二)————工作流提供的用户角色
- Activiti工作流框架学习(一)——环境的搭建和数据表的了解
- Activiti工作流框架学习(一)——环境的搭建和数据表的了解
- Activiti工作流框架学习(一)——环境的搭建和数据表的了解
- Activiti工作流框架学习(一)——环境的搭建和数据表的了解
- App 基础知识
- Python matplotlib画图表
- Google VR开发-Cardboard VR SDK头部追踪实现(隐马尔可夫模型)
- Android程序员学WEB前端(6)-CSS(1)-选择器-Sublime
- LintCode 题目之Aplusb2
- Activiti工作流框架学习(二)——使用Activiti提供的API完成流程操作
- struts2的静态参数封装及3种动态参数封装方法
- 10. Regular Expression Matching
- npm 配置淘宝镜像
- unity音频管理类
- java防止请求重复提交
- jsp九大内置对象的使用详解
- python库matplotlib中线条的颜色及样式
- JAVA的网络编程