文档章节

Activiti

素人派
 素人派
发布于 2016/12/31 20:48
字数 408
阅读 47
收藏 0
  • 介绍
Activiti是一个工作流引擎。
  • Eclipse插件
在线安装地址:http://activiti.org/designer/update [caption id="attachment_4009" align="aligncenter" width="300"] 安装Activiti插件 安装Activiti插件[/caption] 备注:如果不知道如何安装插件的话,可以搜索Eclipse插件使用篇。
  • HelloWorld
在这里我使用“Web版流程设计”画的流程图。 [caption id="attachment_4151" align="aligncenter" width="300"] 请假流程图 请假流程图[/caption] [codesyntax lang="java"]
package activiti.test;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;

import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
import org.activiti.engine.RepositoryService;
import org.activiti.engine.RuntimeService;
import org.activiti.engine.repository.ProcessDefinition;
import org.activiti.engine.runtime.ProcessInstance;
import org.junit.Test;

/**
 * Activiti测试例子。</br>
 * 这里默认加载了配置文件src/main/resources/activiti.cfg.xml
 * @author suren
 * @date 2016年3月28日 下午4:46:31
 */
public class ActivitiTest
{
	/**
	 * 简单的测试流程的启动
	 * @throws Exception
	 */
	@Test
	public void testStartProcess() throws Exception
	{
		//创建流程引擎,使用内存数据库
		ProcessEngineConfiguration config = ProcessEngineConfiguration.
				createStandaloneInMemProcessEngineConfiguration();
		ProcessEngine engine = config.buildProcessEngine();
		
		//部署流程定义文件,资源路径为src/main/resources
		RepositoryService repoService = engine.getRepositoryService();
		repoService.createDeployment().addClasspathResource("test.bpmn").deploy();
		
		//验证已部署的流程定义
		ProcessDefinition result = repoService.createProcessDefinitionQuery().singleResult();
		assertEquals("level", result.getKey());
		
		//启动流程并返回流程实例
		RuntimeService runtimieService = engine.getRuntimeService();
		ProcessInstance processInstance = runtimieService.startProcessInstanceByKey(result.getKey());
		assertNotNull(processInstance);
	}
}
[/codesyntax] 我这里创建的Maven工程,下面是对应的pom.xml文件内容: [codesyntax lang="xml"]
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>org.suren.example</groupId>
	<artifactId>activiti.example</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<dependencies>
		<dependency>
			<groupId>org.activiti</groupId>
			<artifactId>activiti-engine</artifactId>
			<version>${activiti.version}</version>
		</dependency>
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis</artifactId>
			<version>3.1.1</version>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.8.1</version>
		</dependency>
				<dependency>
			<groupId>com.h2database</groupId>
			<artifactId>h2</artifactId>
			<version>1.3.168</version>
		</dependency>
	</dependencies>
	<properties>
		<activiti.version>5.10</activiti.version>
	</properties>
</project>
[/codesyntax]
  • 源码
本文中的源码可以从svn上获取到 http://surenpi.com/subversion/example/activiti.example/
  • Explorer
用户 kermit/kermit
  • 参考
http://wenku.baidu.com/link?url=xzYIEXxd7bCMG6ecz7CppQoKjxi2fhXF-QwK4_yRViXVC23EH_uATPYydwo9-kaP4uwS-y6K7bIw55owQS-5xSPdR-SYG9uxsxNp8m9G6QK

本文转载自:http://surenpi.com/2016/03/28/activiti/

共有 人打赏支持
下一篇: websocket
素人派
粉丝 22
博文 1906
码字总数 9279
作品 6
东城
程序员
私信 提问
推荐csdn里的几篇activiti基础入门及提高的博客

昨天有个网友加qq询问我有没有非maven搭建的activiti项目的demo,因为我博客中写了一个用maven,我当时没有,于是晚上回家尝试了一下,结果比较容易就实现了。 之后和那个网友聊了一下,他说...

涂宗勋
2016/04/20
338
0
Alfresco 宣布开始Activiti业务流程管理BPM引擎开发项目

Alfresco软件今天宣布开发Activiti业务流程管理(BPM)开源项目的开始,其首席架构师由业务流程管理BPM的专家,汤姆.贝延斯担任。该Activiti计划是一项新的基于Apache许可的开源BPM平台,从基...

YipChooli
2010/06/07
0
0
Activiti 5.3 安装配置

安装配置Activiti 5.3还是比较容易的,在这里做个记录以作备忘。 Activiti 5是一个开源的工作流引擎框架,它是基于jBPM 4流程引擎内核的,作者是Tom Baeyens。有关由jBPM到Activiti的变化,可...

鉴客
2012/02/26
967
0
Activiti5.9换成MySQL数据库

本人博客开始迁移,博客整个架构自己搭建及编码 http://www.cookqq.com/listBlog.action Activiti5.9默认的数据库是db,可是我们项目中运用的是mysql,那只好把db换成mysql 步骤: 1.下载act...

cookqq
2013/03/08
0
0
Activiti 6.0 新特性 速递

说到工作流、Activiti,通常大家脑海里一闪的是:“OA系统”、“表单”、“人工审批流转”。 不可否认,OA系统里的表单审批流转是工作流的典型应用。 但是工作流的应用范围不仅限于此,如果提...

6pker
2016/08/22
2.3K
1

没有更多内容

加载失败,请刷新页面

加载更多

容器服务

简介 容器服务提供高性能可伸缩的容器应用管理服务,支持用 Docker 和 Kubernetes 进行容器化应用的生命周期管理,提供多种应用发布方式和持续交付能力并支持微服务架构。 产品架构 容器服务...

狼王黄师傅
昨天
3
0
高性能应用缓存设计方案

为什么 不管是刻意或者偶尔看其他大神或者大师在讨论高性能架构时,自己都是认真的去看缓存是怎么用呢?认认真真的看完发现缓存这一块他们说的都是一个WebApp或者服务的缓存结构或者缓存实现...

呼呼南风
昨天
12
0
寻找一种易于理解的一致性算法(扩展版)

摘要 Raft 是一种为了管理复制日志的一致性算法。它提供了和 Paxos 算法相同的功能和性能,但是它的算法结构和 Paxos 不同,使得 Raft 算法更加容易理解并且更容易构建实际的系统。为了提升可...

Tiny熊
昨天
2
0
聊聊GarbageCollectionNotificationInfo

序 本文主要研究一下GarbageCollectionNotificationInfo CompositeData java.management/javax/management/openmbean/CompositeData.java public interface CompositeData { public Co......

go4it
昨天
3
0
阿里云ECS的1M带宽理解

本文就给大家科普下阿里云ECS的固定1M带宽的含义。 “下行带宽”和“上行带宽” 为了更好的理解,需要先给大家解释个词“下行带宽”和“上行带宽”: 下行带宽:粗略的解释就是下载数据的最大...

echojson
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部