`
v若离v
  • 浏览: 12997 次
社区版块
存档分类
最新评论

Activiti简单示例入门

 
阅读更多
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简单入门了解

    这是一个activiti的简单入门web示例,下载后启动项目,直接访问首页,点击“开始执行activiti流程任务”,如果页面正常运行,会有“activiti流程任务执行完毕,请查看后台输出!”的提示。本示例的主要作用是对...

    Activiti入门示例源码

    Activiti入门示例源码,包含activiti所有需要的jar包,示例包含一个简单工作流,需要本地安装mysql

    activiti 零基础入门教程 中文手册 demo示例

    里面包含了activiti 一个快速入门文档, activiti5.14中文手册 一个基于activiti的示例程序(比较完整的)

    activiti 工作流 入门 可运行 示例 简单 上手 项目 BPM java

    本项目旨在让Activiti初学者可以快速入门,使用工作流里面的请假流程作为Activiti企业实战的Hello World。 简单通过这个实例说明如何结合流程与业务,表单、业务、流程之前如何衔接…… 发起这个项目也是目前没有...

    Activiti6.0教程例子下载

    一个是我们将编辑好的bpmn20.xml文件通过我们之前一分钟入门的示例activiti-explorer应用导入进去,查看它的流程图,并完整执行一遍流程。 在编写这个Demo之前,至少要了解Activiti与Spring如何集成、XxxService各自...

    Activiti6 中文 用户指南 操作手册 开发API

    Activiti6 中文 用户指南 操作手册 开发API,适合入门级java开发人员使用Activiti。

    activity7学习教程

    一、主题:Activiti7入门 二、内容概要: 1、包含activity7的大纲脑图 2、示例代码,activity整合spring,整合springboot 3、导学笔记和视频 4、pdf讲义和markdown讲义 四、Activiti是目前使用最常用的工作流引擎,...

    Activiti 5.8 中文用户手册.zip

    Activiti 5.8 中 文 用 户 手 册 第二章、入门................................................................................................................................................................

    activiti-spring-demo:在Spring框架环境中测试Activiti功能的项目

    Activiti Spring应用程序:订购过程 前言 该项目的主要目的是学习和演示Activiti的各种功能。 应用程序显示了简单的订购业务流程以及用于启动和监视此...入门 如果您想尝试此示例,请单击从存储库下载源代码。 将项目

    spring-boot-with-activiti-drools-example:Activiti和Spring Boot和Drools入门

    Spring-boot与Activiti,Drools的集成示例。 Spring启动与活动示例 教程: 流口水: @see: : BPM图: 修改内容: 1.没有“ BAR”样式的部署,使用“ addClasspathResource”样式。 @see: : 去做: 1,使用...

    中文版Activiti5.8用户指南

    中文版的Activiti用户指南 第一章、简介 ....................................................................................................................................................................

    Activiti5用户指南(中文版)

    Activiti5用户指南(中文版) 第一章、简介 ....................................................................................................................................................................

    flyPiglet-ActivitiStudy-master.zip

    activit的工作流代码示例,展示了基本的activiti部署、流程进行、用户设定、分组、排他网关、并行网关等基础功能,可以了解activit的基本使用方法,入门极佳~

    springBootDemo:springBoot演示

    这是一个SpringBoot的示例项目,基于SpringBoot 2.x实现,项目替代个人学习使用 项目的文档在doc目录下 1项目配置与规范 2快速入门 3 SpringBoot下一个常用功能实现 3.1基础 3.2拦截器(日志/参数校准/跨域) ...

    JAVA上百实例源码以及开源项目源代码

    简单聊天软件CS模式 2个目标文件 一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 ...

    JAVA上百实例源码以及开源项目

    一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源代码...

    java开源包1

    GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....

    java开源包11

    GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....

    java开源包2

    GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....

Global site tag (gtag.js) - Google Analytics