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相关推荐

  1. JavaWeb黑马旅游网-学习笔记01【准备工作】

    Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb黑马旅游网-学习笔记01[准备工作] JavaWeb黑马旅游网-学习笔记02[注册功能] JavaWeb黑马旅游网-学习笔记03[登陆和 ...

  2. JavaWeb-综合案例(用户信息)-学习笔记01【列表查询】

    Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb-综合案例(用户信息)-学习笔记01[列表查询] JavaWeb-综合案例(用户信息)-学习笔记02[登录功能] JavaWeb-综合案 ...

  3. Servlet和HTTP请求协议-学习笔记01【Servlet_快速入门-生命周期方法、Servlet_3.0注解配置、IDEA与tomcat相关配置】

    Java后端 学习路线 笔记汇总表[黑马程序员] Servlet和HTTP请求协议-学习笔记01[Servlet_快速入门-生命周期方法.Servlet_3.0注解配置.IDEA与tomcat相关配置 ...

  4. Tomcat学习笔记01【Web相关概念、Tomcat基本操作】

    Java后端 学习路线 笔记汇总表[黑马程序员] Tomcat学习笔记01[Web相关概念.Tomcat基本操作][day01] Tomcat学习笔记02[Tomcat部署项目][day01] 目录 ...

  5. XML学习笔记01【xml_基础、xml_约束】

    Java后端 学习路线 笔记汇总表[黑马程序员] XML学习笔记01[xml_基础.xml_约束][day01] XML学习笔记02[xml_解析][day01] 目录 01 xml_基础 今日内容 ...

  6. Bootstrap学习笔记01【快速入门、栅格布局】

    Java后端 学习路线 笔记汇总表[黑马程序员] Bootstrap学习笔记01[快速入门.栅格布局][day01] Bootstrap学习笔记02[全局CSS样式.组件和插件.案例_黑马旅游网][d ...

  7. JavaScript学习笔记01【基础——简介、基础语法、运算符、特殊语法、流程控制语句】

    w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...

  8. HTML/CSS学习笔记01【概念介绍、基本标签】

    w3cschool菜鸟教程.CHM(腾讯微云):https://share.weiyun.com/c1FaX6ZD HTML/CSS学习笔记01[概念介绍.基本标签.表单标签][day01] HTML ...

  9. JDBC学习笔记01【JDBC快速入门、JDBC各个类详解、JDBC之CRUD练习】

    黑马程序员-JDBC文档(腾讯微云)JDBC笔记.pdf:https://share.weiyun.com/Kxy7LmRm JDBC学习笔记01[JDBC快速入门.JDBC各个类详解.JDBC之CR ...

最新文章

  1. python使用正则表达式寻找具有特定后缀的文件
  2. 国科大prml12-半监督学习
  3. html5绘制矩形动画,HTML5下绘制矩形教程
  4. php项目的建立,PHP开发-ZendStudio初学教程-建立PHP项目
  5. python 菜单 阻塞 其它程序_Python subprocess.call阻塞
  6. java 0xf0_用java做一个最小的操作系统内核
  7. 数据库保存经纬度,需要采用什么数据类型,小数点应该精确多少位?
  8. 与孩子一起学编程04章
  9. 解决笔记本显示器屏幕亮度无法调节情况
  10. Tableau怎么制作专业图表
  11. August 2007
  12. centos桌面版配置ip_CentOS7安装GNOME可视化界面和如何配置IP地址
  13. c语言修仙键盘,最后一口气ulbsans电脑版
  14. 运维工程师需要掌握什么技能?有哪些要求?
  15. 分类计数原理与分步计数原理_《分类加法计数原理与分步乘法计数原理》教学设计...
  16. 5大模块带你了解视频后台设计(含推荐策略)
  17. 汇编实验5 DOS、BIOS调用
  18. 【标准】要点整理-软件服务商交付能力评估标准
  19. Google,你让我只能高山仰止,望尘莫及了!
  20. 坚持每天工作学习一小时

热门文章

  1. 树莓派的使用(一、安装系统)
  2. 2019西安交通大学计算机复试,2019年西安交通大学复试分数线
  3. 论文解读 | 智能数据库的最新动态
  4. 创邻科技张晨:智能物联为图数据库的迅速发展提供了良好应用场景
  5. SQL优化——IN和EXISTS谁的效率更高
  6. 资源放送丨《容灾体系建设之“独孤九式”》PPT视频
  7. 直播预告:WLS/WAS故障基本分析介绍
  8. 使用DataSync迁移数据到Gaussdb T
  9. 19C新特性:Voting Disk管理
  10. 详解图像处理的算术运算与逻辑运算