package com.itheima.test;
import com.itheima.utils.SecurityUtil;
import lombok.extern.slf4j.Slf4j;
import org.activiti.api.process.model.ProcessDefinition;
import org.activiti.api.process.model.ProcessInstance;
import org.activiti.api.process.model.builders.ProcessPayloadBuilder;
import org.activiti.api.process.runtime.ProcessRuntime;
import org.activiti.api.runtime.shared.query.Page;
import org.activiti.api.runtime.shared.query.Pageable;
import org.activiti.api.task.model.Task;
import org.activiti.api.task.model.builders.TaskPayloadBuilder;
import org.activiti.api.task.runtime.TaskRuntime;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@Slf4j
@RunWith(SpringRunner.class)
@SpringBootTest
public class TestActiviti {
@Autowired
private ProcessRuntime processRuntime;
@Autowired
private TaskRuntime taskRuntime;
@Autowired
private SecurityUtil securityUtil;
/**
* 查看流程定义内容
* Activiti7可以自动部署流程
*/
@Test
public void findProcess(){
securityUtil.logInAs("jack");
// 流程定义的分页对象
Page<ProcessDefinition> definitionPage = processRuntime.processDefinitions(Pageable.of(0, 10));
log.info("可用的流程定义总数:{}",definitionPage.getTotalItems());
for (ProcessDefinition processDefinition : definitionPage.getContent()) {
System.out.println("==============================");
log.info("流程定义内容:{}",processDefinition);
System.out.println("==============================");
}
}
/**
* 启动流程
*/
@Test
public void startProcess(){
// 设置登录用户
securityUtil.logInAs("system");
ProcessInstance processInstance = processRuntime.
start(ProcessPayloadBuilder.
start().
withProcessDefinitionKey("mydemo").
build());
log.info("流程实例的内容,{}",processInstance);
}
/**
* 执行任务
*/
@Test
public void doTask(){
// 设置登录用户
securityUtil.logInAs("jerry");
// 查询任务
Page<Task> taskPage = taskRuntime.tasks(Pageable.of(0, 10));
if(taskPage != null && taskPage.getTotalItems()>0){
for (Task task : taskPage.getContent()) {
// 拾取任务
taskRuntime.claim(TaskPayloadBuilder.
claim().
withTaskId(task.getId()).
build());
log.info("任务内容,{}",task);
// 完成任务
taskRuntime.complete(TaskPayloadBuilder.
complete().
withTaskId(task.getId()).
build());
}
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
Activiti与Spring整合开发(完整demo)

共16个文件
xml:6个
java:4个
yml:2个

需积分: 5 1 下载量 170 浏览量
2024-01-13
12:20:37
上传
评论
收藏 22KB ZIP 举报
温馨提示
Activiti与Spring整合开发---Activiti与Spring整合的配置 在Activiti中核心类的是ProcessEngine流程引擎,与Spring整合就是让Spring来管理ProcessEngine; 通过org.activiti.spring.SpringProcessEngineConfiguration 与Spring整合方式来创建ProcessEngine对象。 创建spring与activiti的整合配置文件:activiti-spring.xml(名称不固定);
资源推荐
资源详情
资源评论






















格式:zip 资源大小:28.3MB



格式:zip 资源大小:1.1MB





收起资源包目录













































共 16 条
- 1
资源评论



hhzz
- 粉丝: 5w+
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 第三章工程量计算.doc
- 外墙装饰装修工程施工方案.docx
- PLC自动化专业大学生实习报告.doc
- 第五章植物体内有机物质的运输.doc
- 海外业务子体系仓库工作指导书范本.pdf
- 卫生器具及给水配件安装工程检验表4.doc
- 委托制造、外加工管理准则.doc
- 2015版园林绿化工程费用定额.doc
- 毕业论文设计--外文翻译=机器人技术使计算机科学更加贴近大众.doc
- 验收测量作业指导书p.doc
- 回弹法检测作业指导书.doc
- 浅谈市政工程项目的招投标审计.doc
- 危险化学品智能化和信息化管理技术的应用与发展趋势.pptx
- 小学标准化培植工程[优质文档].ppt
- 为什么要基本建设工程预算.doc
- 预制楼梯安装工程质量技术交底卡.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
