activiti7基础入门、activiti7实战、activiti7运用

activiti7数据库表生成:

<bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
    <property name="dataSource" ref="dataSource"></property>
    <property name="databaseSchemaUpdate" value="true"/>
</bean>

方式一:
//1.创建ProcessEngineConfiguration对象  第一个参数:配置文件名称  第二个参数是processEngineConfiguration的bean的id
ProcessEngineConfiguration configuration=ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
//2.创建ProcesEngine对象
ProcessEngine processEngine=configuration.buildProcessEngine();
//3.输出processEngine对象
System.out.println(processEngine);

方式二:
//条件:1.activiti配置文件名称:activiti.cfg.xml   2.bean的id="processEngineConfiguration"
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
System.out.println(processEngine);

----activiti7 25张表格分类
ACT_RE_*: 'RE'表示 repository。 这个前缀的表包含了流程定义和流程静态资源 (图片,
规则,等等)

ACT_RU_*: 'RU'表示 runtime。 这些运行时的表,包含流程实例,任务,变量,异步任务,
等运行中的数据。 Activiti 只在流程实例执行过程中保存这些数据, 在流程结束时就会删
除这些记录。 这样运行时表可以一直很小速度很快。

ACT_HI_*: 'HI'表示 history。 这些表包含历史数据,比如历史流程实例, 变量,任务等

ACT_GE_*: GE 表示 general。通用数据, 用于不同场景下

ACT_evt_* 表示日志记录

ACT_procdef_* 表示流程定义信息

-----activi7service职能
RepositoryService activiti 的资源管理类
RuntimeService activiti 的流程运行管理类
TaskService activiti 的任务管理类
HistoryService activiti 的历史管理类
ManagerService activiti 的引擎管理类

RepositoryService是 activiti 的资源管理类,提供了管理和控制流程发布包和流程定义的操作。使用工作流建模工
具设计的业务流程图需要使用此 service 将流程定义文件的内容部署到计算机。
除了部署流程定义以外还可以:
查询引擎中的发布包和流程定义。
暂停或激活发布包,对应全部和特定流程定义。 暂停意味着它们不能再执行任何操作了,激活
是对应的反向操作。
获得多种资源,像是包含在发布包里的文件, 或引擎自动生成的流程图。
获得流程定义的 pojo 版本, 可以用来通过 java 解析流程,而不必通过 xml

RuntimeService是 activiti 的流程运行管理类。可以从这个服务类中获取很多关于流程执行相关的信息

TaskService是 activiti 的任务管理类。可以从这个类中获取任务的信息。

HistoryService是 activiti 的历史管理类,可以查询历史信息,执行流程时,引擎会保存很多数据(根据配置),比
如流程实例启动时间,任务的参与者, 完成任务的时间,每个流程实例的执行路径,等等。 这个
服务主要通过查询功能来获得这些数据

--------------activiti7表单属性设置
name 节点名称
assignee 任务人(节点处理人)

---------activiti7流程部署
------activiti7
1.画流程图
2.部署流程图 
3.启动流程图
4.查看任务
5.完成任务
-------
//1.创建processEngined对象
ProcessEngine processEngin = ProcessEngines.getDefaultProcessEngine();
//2.得到RepositoryService示例
RepositoryService repositoryService =processEngin.getRepositoryService();
//3.进行部署
Deployment deployment =repositoryService.createDeployment()
                                        .addClasspathResource("diagram/holiday.bpmn")
                                        .addClasspathResource("diagram/holiday.png")
                                        .name("请假申请单流程")
                                        .deploy();
//4.输出部署的一些信息
System.out.println(deployment.getName());
System.out.println(deployment.getId());
---5.启动流程图
ProcessInstance processEngineInstance=runtimeService.startProcessInstanceByKey("myProcess_1");
---6.查看任务
List<Task> taskList=taskService.createTaskQuery().processDefinitionKey("myProcess_1").taskAssignee("zhangsan").list();
---7.完成任务
for (Task task : taskList) {
            taskService.complete(task.getId());
            System.out.println("流程实例ID:"+task.getProcessInstanceId());//act_hi_procinst
            System.out.println("任务ID:"+task.getId());//act_hi_taskinst
            System.out.println("任务(节点)负责人:"+task.getAssignee());//act_hi_taskinst
            System.out.println("任务(节点)名称:"+task.getName());//act_hi_taskinst
        }
---8.删除部署任务(走到一半的流程,不能删除流程定义)
repositoryService.deleteDeployment(processDefinition.getDeploymentId());
--强制删除(级联删除)
repositoryService.deleteDeployment(processDefinition.getDeploymentId(),ture);    
------是否暂停
boolean suspend = processDefinition.isSuspended();
if(suspend){
-----激活,这里将流程定义下的所有流程实例全部激活
repositoryService.activateProcessDefinitionById(processDefinitionId,true, null);    
-----挂起,这里将流程定义下的所有流程实例全部挂起
repositoryService.suspendProcessDefinitionById(processDefinitionId,true, null);
-----activiti7流程部署影响表
act_re_deployment  部署信息
act_re_procdef     流程定义的一些信息(业务挂钩)
act_ge_bytearray   流程定义的bpmn文件及png文件(业务挂钩)

-----activiti7启动流程实例影响表
act_hi_actinst     已完成的活动信息
act_hi_identitylink   参与者信息
act_hi_procinst   流程实例
act_hi_taskinst   任务实例
act_ru_execution   执行表(业务挂钩)
act_ru_identitylink   参与者信息
act_ru_task  任务(核心表) 任务结束数据删除

-----activiti7查询当前用户的任务列表影响表
act_hi_procinst 流程实例
act_hi_taskinst 任务实例

----activiti7处理当前用户的任务影响表
act_hi_actinst
act_hi_identitylink
act_hi_taskinst
act_ru_identitylink
act_ru_task

----activiti7完成当前用户的任务影响表(taskService.complete("2505");)
act_hi_actinst     已完成的活动信息
act_hi_identitylink   参与者信息
act_hi_procinst   流程实例
act_hi_taskinst   任务实例
act_ru_execution   执行表
act_ru_identitylink   参与者信息
act_ru_task  任务(核心表)


-----activiti7流程删除影响表
act_re_deployment  部署信息
act_re_procdef     流程定义的一些信息
act_ge_bytearray   流程定义的bpmn文件及png文件

----activiti7流程变量影响表
ACT_GE_BYTEARRAY
ACT_RU_VARIABLE
ACT_HI_VARINST

------activiti7流程候选人(candidate users)例:zhangsan,lisi
List<Task> list=taskService.createTaskQuery().processDefinitionKey(key)
//.taskCandidateUser(candidate_users)//设置候选用户
//.taskAssignee(candidate_users)//设置任务负责人
.list();
-----activiti7排他网管(x)
多个条件满足走最小的id
-----activiti7并行网管(+)双
分分支都完成才能走到下一节点

-----activiti7包含网管(O)双
排他网管+并行网管的结合

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值