Activiti工作流之实现一个简单的流程审批

Activiti⼯作流之实现⼀个简单的流程审批该代码在上⼀篇博客的基础上开发。
1.绘制bpmn流程图
在resources⽬录下新建⼀个diagram⽂件夹来存放我们绘制的bpmn流程图
由于我的IDEA中已经安装了actiBPM插件,所以我们可以直接创建
然后利⽤IDEA中提供的组件来绘制流程图
我们可以点击对应的流程,在Assignee中指定任务负责⼈。
在IDEA中将bpmn格式的后缀改为.xml
时钟显示器导出png图⽚,最终效果如下:
3.部署流程定义
部署流程定义就是要将上边绘制的图形即流程定义(.bpmn)部署在⼯作流程引擎 activiti 中,⽅法 如下:
/**
*  流程定义的部署
*  背后影响的表:
*      act_re_deployment: 部署信息
*      act_re_procdef: 流程定义
*      act_ge_bytearray: 流程定义的bpmn⽂件和png⽂件
*/
public class ActivitiDeployment {
public static void main(String[] args) {
//1.创建ProcessEngineer对象
ProcessEngine processEngine = DefaultProcessEngine();
//2.获取repositoryService
RepositoryService repositoryService = RepositoryService();
//3.部署对象
塑胶面板Deployment deploy = ateDeployment()
//添加bpmn资源
.addClasspathResource("diagram/holiday.bpmn")
//添加图⽚⽂件资源
.addClasspathResource("diagram/holiday.png")
.name("请假申请流程")
.
deploy();
//4.输出部署的⼀些信息
一个度导航System.out.Id());
System.out.Name());
}
}
我们还可以⽤zip压缩包部署
@Test
public void deployProcessByZip() {
//1.创建ProcessEngineer对象
ProcessEngine processEngine = DefaultProcessEngine();
/
/2.获取repositoryService
RepositoryService repositoryService = RepositoryService();
//3.定义zip输⼊流
InputStream inputStream = Class() .getClassLoader() .getResourceAsStream(
" diagram/holiday.zip");384孔板
//4.部署对象回转窑烧嘴
ZipInputStream zipInputStream = new ZipInputStream(inputStream);
Deployment deploy = ateDeployment()
.addZipInputStream(zipInputStream)
//5.输出部署的⼀些信息
System.out.Id());
System.out.Name());
}
4.启动⼀个流程实例
温玉理疗床流程定义部署在 activiti 后就可以通过⼯作流管理业务流程了,也就是说上边部署的请假申请流程可以使⽤了。
针对该流程,启动⼀个流程表⽰发起⼀个新的请假申请单,这就相当于 java 类与 java 对象的关 系,类定义好后需要 new 创建⼀个对象使⽤,当然可以 new 多个对象。对于请假申请流程,张三发起⼀个请假申请单需要启动⼀个流程实例。

本文发布于:2024-09-21 13:40:55,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/306792.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:流程   部署   绘制   请假   定义   作流
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议