工作流引擎面试题
1:什么是工作流,工作流的核心对象是什么,activiti共操作数据库多少张表。
工作流就是多个参与者,按照某种预定义的规则,传递业务信息,进行审核的功能一个框架(Activiti)
processEngine,调用Service,从而操作数据库的表
2:工作流中RepositoryService、RuntimeService、TaskService、HistoryService分别表示什么操作
RepositoryService:流程定义和部署对象
RuntimeService:执行管理,包括流程实例和执行对象(正在执行)
TaskService:执行任务相关的(正在执行)
HistoryService:历史管理
IdentityService:Activiti表的用户角组
spring boot原理 通俗面试3:流程实例和执行对象的区别
流程从开始到结束的最大分支,一个流程中,流程实例只有1个。
执行对象,就是按照流程定义的规则执行一次的操作,一个流程中,执行对象可以有多个。
4:流程变量在项目中的作用
1、用来传递业务参数,目的就是审核人可以通过流程变量查看申请人的一些审核信息。
2、在连线的condition中设置流程变量,用来指定应该执行的连线
3、使用流程变量指定个人任务和组任务的办理人
4、activiti工作流中,如果一个任务完成后,存在多条连线,应该如何处理?
5、 使用流程变量
当一个任务完成之后,根据这几条连线的条件和设置流程变量,例如${流程变量的名称=='流程变量的值'},{}符号是boolean类型,判断走哪条连线
6、activiti工作流中,排他网关和并行网关都能执行什么功能
排他网关:分支,通过连线的流程变量,判断执行哪条连线,如果条件不符合,会执行默认的连线离开,注意:只能执行其中的一个流程。
并行网关:可以同时执行多个流程,直到总流程的结束。可以对流程进行分支和聚合,注意:流程实例和执行对象是不一样的
7、分配个人任务的三种方式
直接给值,在Xxxx.bpmn文件中指定
流程变量${流程变量的名称}
使用类 监听这个类(实现一个接口),指定任务的办理人
8、个人任务和组任务的查询一样吗?
不一样
都是用TaskService完成(ateTasQuery)
个人任务(taskAssgnee),组任务(taskCandidateUser)
数据库存放,个人任务(类型:参与),组任务(类型,参与,候选)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论