zoukankan      html  css  js  c++  java
  • activiti常见的问题

    一、工作流如何在项目中使用的,以及在使用工作流遇到的问题,以及怎么解决的?
    1.1使用的是activiti框架 5.22.0, 使用的是activiti 插件画的流程图,通过 usertask定义一系列角色,在连线定义用户变量,通过流程变量传递
    用户ID,使用的是单人提交的方式完成一些列流程的。图形画完以后将工作流程发布,然后将业务的和工作流绑定。
    通过 ProcessEngine 流程引擎获取并返回一个  Deployment对象, Deployment对象 获取createDeployment 创建部署对象 .addClasspathResource(path)//加载资源文件,一次只能加载一个文件
                             .deploy(); 完成部署

    1.2 通过 RuntimeService对象的 startProcessInstanceByKey方法启动一个流程实例,参数: 流程实例key 业务主键  流程变量

    1.3 通过TaskService查询用户的任务以及提交任务。

    二、activiti涉及的表
    act_hi_procinst 业务主键ID,流程实例ID,起始时间,结束时间,任务耗时总时长;
    act_ru_task 正在运行的任务表
    act_hi_identitylink 候选人表
    act_re_deployment 部署信息表
    act_ru_variable 正在执行的流程变量表
    ACT_HI_TASKINST 历史的任务实例
    ACT_HI_PROCINST 历史的流程实例
    三、activiti的核心对象
    ProcessEngine         流程引擎     
    RepositoryService     流程管理定义
    RuntimeService        执行任务,包括启动、推进、删除流程实例等操作
    TaskService           任务管理
    HistoryService        历史管理(执行完的数据的管理)
    IdentityService       组织结构管理

    四、activiti的优缺点以及和其他工作流引擎的对比
    activiti 和workflow比对
    https://blog.csdn.net/qq_30739519/article/details/82493456

    五、扩展 activiti的几种任务模式以及监听网管、排他网管
        
         * 指定办理人(转派任务)
         * 直接将办理人 Assiagnee换成别人,相当于将任务转出
            taskservice.setAssignee(taskId, userId);
        
        将任务分给他人处理 委派他人处理
        taskservice.delegateTask(taskId, userId);
        
        被委派人 回到委派人
        taskservice.resolveTask(taskId);
        
        任务认领
        taskservice.claim(taskId,userId);

  • 相关阅读:
    matlab 画图中线型及颜色设置
    创建二叉树求叶子节点个数
    乐视2016暑期实习编程题
    MFC特定函数的应用20160720(SystemParametersInfo,GetWindowRect,WriteProfileString,GetSystemMetrics)
    MFC使用ShowWindow(SW_MAXIMIZE)任务栏消失的处理
    Windows字符集的统一与转换
    MFC学习20160718(GetModuleFileName&&GetAppDataPath)
    泛型算法概述
    链表的特有算法操作
    流迭代器的使用
  • 原文地址:https://www.cnblogs.com/hellohero55/p/12845099.html
Copyright © 2011-2022 走看看