Activiti进阶(一)——HelloWorld
来源:互联网 发布:广州恒大淘宝俱乐部u16 编辑:程序博客网 时间:2024/06/16 15:30
任何知识的学习都是有简入繁,我们的Activiti也不例外,这篇博文将通过一个简单的HelloWorld来带大家认识一下我们的Activiti;
一、画流程图
在画流程图之前,要确保自己的Eclipse安装了Activiti的插件。
图一 请假流程图
在这里要说明一下,我们指定在画流程图的时候,要指明这个流程实例的ID、Name,然后设置好每个用户任务的ID、Name、Assignee(办理人);
二、部署流程定义
在这里我们使用Junit做模拟,代码如下:
在这里,我们使用RepositoryService来部署流程定义,使用addClasspathResource来从类路径下加载资源,需要注意的是,如果加上"/"表示从当前目录下寻找资源文件,如果不加"/",表示从类路径下加载资源文件;并且一次只能加载一个资源。
执行结果如下:
三、启动流程实例
部署和启动对我们开发人员来说一定很熟悉,就拿我们平时做项目来讲,部署就是把项目扔到服务器中,启动就是将服务器运行起来;我们的Activiti也不例外,在这里我们使用RuntimeService来启动流程实例。
启动流程的方式有很多,推荐使用流程定义的Key来启动,这样做的优势是可以按照最新版本的流程启动流程实例。
执行结果如下:
四、查看个人任务
按照我们流程图上所画的,当这个流程启动之后,流程会停留在[提交申请]这个用户任务上,我们指定这个用户任务的办理人是张三,那么我们张三怎样查看他的任务呢?当然,我们先的知道办理人的名字,这个在我们画流程图的时候已经设置了,直接拿过来用就可以。我们用TaskService完成任务的查询。
执行结果如下:
五、完成个人任务
既然要完成任务,当然少不了任务的ID了,我们在第四步已经得到了我们的任务ID,直接拿过来用就可以了。
执行结果如下:
总结:
至此,我们的HelloWorld就完成了,刚接触工作流的时候总觉得很复杂,过了一段时间之后就发现也就这么点东西,无非是把一个流程抽象出来一个一个对象而已。现在在敲一遍例子,真有种一气呵成的感觉。
- Activiti进阶(一)——HelloWorld
- Activiti进阶(一)——HelloWorld
- Activiti进阶(一)——HelloWorld
- Activiti进阶(一)——HelloWorld
- Activiti(一)——HelloWorld
- 【Activiti 进阶一】简单流程实例helloworld
- Activiti——HelloWorld-模拟流程执行(三)
- Activiti工作流(一)——Activiti Diagram
- Activiti进阶(六)——连线(SequenceFlow)
- Activiti进阶(七)——排他网关(ExclusiveGateWay)
- Activiti进阶(八)——并行网关(ParallelGateWay)
- Activiti进阶(九)——接收任务(ReceiveTask)
- Activiti进阶(八)——并行网关(ParallelGateWay)
- Activiti进阶(六)——连线(SequenceFlow)
- Activiti进阶(七)——排他网关(ExclusiveGateWay)
- Activiti进阶(八)——并行网关(ParallelGateWay)
- Activiti进阶(九)——接收任务(ReceiveTask)
- Activiti进阶(三)——流程定义的CRUD
- Codeforces Round #432 (Div. 2, based on IndiaHacks Final Round 2017)
- C#--抽象类、抽象方法、多态机制
- 我的编程习惯
- activiti 工作流会签 / 多人审批时一人通过也可 / 在当前节点获取下一节点的信息 / 流程部署之后发布之前获取所有节点的信息 / 流程启动开始之前传送之后节点办理人 / 同一结点设置多个监听
- [Leetcode] 388. Longest Absolute File Path 解题报告
- Activiti进阶(一)——HelloWorld
- Hadoop格式化HDFS报错java.net.UnknownHostException: centos0
- 第十一节:多窗口切换
- 文章标题
- python 中model.py详解
- 【PHP】wamp集成环境下PHPStorm安装XDebug插件
- mybatis知识点
- Unity中贴图报错
- Pointers on C——7 Functions.9