import java.util.List; import org.activiti.engine.ProcessEngine; import org.activiti.engine.ProcessEngines; import org.activiti.engine.repository.Deployment; import org.activiti.engine.runtime.ProcessInstance; import org.activiti.engine.task.Task; import org.junit.Test; public class HelloWorld { ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine(); /**部署流程定义*/ @Test public void deploymentProcessDefinition(){ Deployment deployment = processEngine.getRepositoryService()//与流程定义和部署对象相关的Service .createDeployment()//创建一个部署对象 .name("helloworld入门程序")//添加部署的名称 .addClasspathResource("diagrams/HelloWorld.bpmn")//从classpath的资源中加载,一次只能加载一个文件 .addClasspathResource("diagrams/HelloWorld.png")//从classpath的资源中加载,一次只能加载一个文件 .deploy();//完成部署 System.out.println("部署ID:"+deployment.getId());//1 System.out.println("部署名称:"+deployment.getName());//helloworld入门程序 } /**启动流程实例*/ @Test public void startProcessInstance(){ //流程定义的key String processDefinitionKey = "helloworld"; ProcessInstance pi = processEngine.getRuntimeService()//与正在执行的流程实例和执行对象相关的Service .startProcessInstanceByKey(processDefinitionKey);//使用流程定义的key启动流程实例,key对应helloworld.bpmn文件中id的属性值,使用key值启动,默认是按照最新版本的流程定义启动 System.out.println("流程实例ID:"+pi.getId());//流程实例ID 101 System.out.println("流程定义ID:"+pi.getProcessDefinitionId());//流程定义ID helloworld:1:4 } /**查询当前人的个人任务*/ @Test public void findMyPersonalTask(){ String assignee = "李四"; List<Task> list = processEngine.getTaskService()//与正在执行的任务管理相关的Service .createTaskQuery()//创建任务查询对象 .taskAssignee(assignee)//指定个人任务查询,指定办理人 .list(); if(list!=null && list.size()>0){ for(Task task:list){ System.out.println("任务ID:"+task.getId()); System.out.println("任务名称:"+task.getName()); System.out.println("任务的创建时间:"+task.getCreateTime()); System.out.println("任务的办理人:"+task.getAssignee()); System.out.println("流程实例ID:"+task.getProcessInstanceId()); System.out.println("执行对象ID:"+task.getExecutionId()); System.out.println("流程定义ID:"+task.getProcessDefinitionId()); System.out.println("########################################################"); } } } /**完成我的任务*/ @Test public void completeMyPersonalTask(){ //任务ID String taskId = "104"; processEngine.getTaskService()//与正在执行的任务管理相关的Service .complete(taskId); System.out.println("完成任务:任务ID:"+taskId); } }
相关推荐
这是一个activiti的简单入门web示例,下载后启动项目,直接访问首页,点击“开始执行activiti流程任务”,如果页面正常运行,会有“activiti流程任务执行完毕,请查看后台输出!”的提示。本示例的主要作用是对...
Activiti入门示例源码,包含activiti所有需要的jar包,示例包含一个简单工作流,需要本地安装mysql
里面包含了activiti 一个快速入门文档, activiti5.14中文手册 一个基于activiti的示例程序(比较完整的)
本项目旨在让Activiti初学者可以快速入门,使用工作流里面的请假流程作为Activiti企业实战的Hello World。 简单通过这个实例说明如何结合流程与业务,表单、业务、流程之前如何衔接…… 发起这个项目也是目前没有...
一个是我们将编辑好的bpmn20.xml文件通过我们之前一分钟入门的示例activiti-explorer应用导入进去,查看它的流程图,并完整执行一遍流程。 在编写这个Demo之前,至少要了解Activiti与Spring如何集成、XxxService各自...
Activiti6 中文 用户指南 操作手册 开发API,适合入门级java开发人员使用Activiti。
一、主题:Activiti7入门 二、内容概要: 1、包含activity7的大纲脑图 2、示例代码,activity整合spring,整合springboot 3、导学笔记和视频 4、pdf讲义和markdown讲义 四、Activiti是目前使用最常用的工作流引擎,...
Activiti 5.8 中 文 用 户 手 册 第二章、入门................................................................................................................................................................
Activiti Spring应用程序:订购过程 前言 该项目的主要目的是学习和演示Activiti的各种功能。 应用程序显示了简单的订购业务流程以及用于启动和监视此...入门 如果您想尝试此示例,请单击从存储库下载源代码。 将项目
Spring-boot与Activiti,Drools的集成示例。 Spring启动与活动示例 教程: 流口水: @see: : BPM图: 修改内容: 1.没有“ BAR”样式的部署,使用“ addClasspathResource”样式。 @see: : 去做: 1,使用...
中文版的Activiti用户指南 第一章、简介 ....................................................................................................................................................................
Activiti5用户指南(中文版) 第一章、简介 ....................................................................................................................................................................
activit的工作流代码示例,展示了基本的activiti部署、流程进行、用户设定、分组、排他网关、并行网关等基础功能,可以了解activit的基本使用方法,入门极佳~
这是一个SpringBoot的示例项目,基于SpringBoot 2.x实现,项目替代个人学习使用 项目的文档在doc目录下 1项目配置与规范 2快速入门 3 SpringBoot下一个常用功能实现 3.1基础 3.2拦截器(日志/参数校准/跨域) ...
简单聊天软件CS模式 2个目标文件 一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 ...
一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源代码...
GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....
GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....
GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....