Activiti工作流学习笔记01
Activiti6工作流学习笔记01
activiti工作流目前官方最新版本是7.x,但....版本不重要了。这篇笔记只是我学习activiti6过程中的自我总结。如果笔记上有错误的话,欢迎赐教,谢谢!
我学习Activiti工作流的时候是根据一个项目实现Activiti工作流---请假流程管理系统来学习的。
Activiti工作流提供23张表和7大服务,CSDN上有大神总结了一下,可以看看https://www.cnblogs.com/yachao1120/p/10807026.html。我们在使用Activiti工作流开发的时候,可以调用这些表的表字段完成业务数据的查找。也可以根据业务数据查找流程表中(Activiti提供的23张表)的数据。业务数据到底是个啥,上面有说我是根据一个项目实现Activiti工作流---请假流程管理系统来学习的。所以说可以理解业务数据就是请假单表。
1.在这个请假流程管理系统中,已知任务ID,如何查找请假单ID,从而获取请假单信息。
解决思路如下:
(1).使用任务ID,查询任务对象Task.
(2).使用任务对象Task获取流程实例ID.
(3).使用流程实例ID,查询正在执行对象表,返回流程实例对象。
(4).使用流程实例对象获取BUSINESS_KEY.
(5).获取BUSINESS_KEY对应的主键ID,使用主键ID查询请假对象,从而获取请假单信息。
2.activiti工作流中,如果·一个任务完成后,还存在多条连线,应该如何处理?
解决思路:
(1).在连线中,使用流程变量
(2).当一个任务完成之后,根据这几条连线的条件和设置流程变量。例如${流程变量的名称==“流程变量的值”},{}符号是boolean类型,在完成任务的时候,设置流程变量,从而判断走哪条连线
3.在Activiti工作流中,排他网关和并行网关都能执行什么功能?
(1).排他网关:分支,通过连线设置流程变量,判断执行哪条连线,如果条件不符合,会执行默认
连线离开。注意:只能执行其中的一个流程。
(2).并行网关:可以同时执行多个流程,直到总流程结束。可以对流程进行分支和聚合,注意:流程实例和执行对象是不一样的
4.分配个人任务的三种方式
(1).直接给值:在xxx.bpmn文件中指定。
(2).流程变量${流程变量的名称}或者#{}
(3).使用类 监听这个类(实现一个接口),指定任务的办理人(setAssgnee())
5.个人任务和组任务的查询
(1)都是用TaskService完成(TaskService.createTaskQuery)
(2).查询的区别:个人任务使用taskAssgnee,组任务使用taskCandidateUser
(3).数据库的存放,在任务办理人表中,个人任务,存放(类型,参与);组任务,存放(类型,参与,候选)
(4).拾取任务(clain),将组任务指定给个人任务
Activiti工作流学习笔记01相关推荐
- JavaWeb黑马旅游网-学习笔记01【准备工作】
Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb黑马旅游网-学习笔记01[准备工作] JavaWeb黑马旅游网-学习笔记02[注册功能] JavaWeb黑马旅游网-学习笔记03[登陆和 ...
- JavaWeb-综合案例(用户信息)-学习笔记01【列表查询】
Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb-综合案例(用户信息)-学习笔记01[列表查询] JavaWeb-综合案例(用户信息)-学习笔记02[登录功能] JavaWeb-综合案 ...
- Servlet和HTTP请求协议-学习笔记01【Servlet_快速入门-生命周期方法、Servlet_3.0注解配置、IDEA与tomcat相关配置】
Java后端 学习路线 笔记汇总表[黑马程序员] Servlet和HTTP请求协议-学习笔记01[Servlet_快速入门-生命周期方法.Servlet_3.0注解配置.IDEA与tomcat相关配置 ...
- Tomcat学习笔记01【Web相关概念、Tomcat基本操作】
Java后端 学习路线 笔记汇总表[黑马程序员] Tomcat学习笔记01[Web相关概念.Tomcat基本操作][day01] Tomcat学习笔记02[Tomcat部署项目][day01] 目录 ...
- XML学习笔记01【xml_基础、xml_约束】
Java后端 学习路线 笔记汇总表[黑马程序员] XML学习笔记01[xml_基础.xml_约束][day01] XML学习笔记02[xml_解析][day01] 目录 01 xml_基础 今日内容 ...
- Bootstrap学习笔记01【快速入门、栅格布局】
Java后端 学习路线 笔记汇总表[黑马程序员] Bootstrap学习笔记01[快速入门.栅格布局][day01] Bootstrap学习笔记02[全局CSS样式.组件和插件.案例_黑马旅游网][d ...
- JavaScript学习笔记01【基础——简介、基础语法、运算符、特殊语法、流程控制语句】
w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...
- HTML/CSS学习笔记01【概念介绍、基本标签】
w3cschool菜鸟教程.CHM(腾讯微云):https://share.weiyun.com/c1FaX6ZD HTML/CSS学习笔记01[概念介绍.基本标签.表单标签][day01] HTML ...
- JDBC学习笔记01【JDBC快速入门、JDBC各个类详解、JDBC之CRUD练习】
黑马程序员-JDBC文档(腾讯微云)JDBC笔记.pdf:https://share.weiyun.com/Kxy7LmRm JDBC学习笔记01[JDBC快速入门.JDBC各个类详解.JDBC之CR ...
最新文章
- python使用正则表达式寻找具有特定后缀的文件
- 国科大prml12-半监督学习
- html5绘制矩形动画,HTML5下绘制矩形教程
- php项目的建立,PHP开发-ZendStudio初学教程-建立PHP项目
- python 菜单 阻塞 其它程序_Python subprocess.call阻塞
- java 0xf0_用java做一个最小的操作系统内核
- 数据库保存经纬度,需要采用什么数据类型,小数点应该精确多少位?
- 与孩子一起学编程04章
- 解决笔记本显示器屏幕亮度无法调节情况
- Tableau怎么制作专业图表
- August 2007
- centos桌面版配置ip_CentOS7安装GNOME可视化界面和如何配置IP地址
- c语言修仙键盘,最后一口气ulbsans电脑版
- 运维工程师需要掌握什么技能?有哪些要求?
- 分类计数原理与分步计数原理_《分类加法计数原理与分步乘法计数原理》教学设计...
- 5大模块带你了解视频后台设计(含推荐策略)
- 汇编实验5 DOS、BIOS调用
- 【标准】要点整理-软件服务商交付能力评估标准
- Google,你让我只能高山仰止,望尘莫及了!
- 坚持每天工作学习一小时