1:下载Activiti

  访问:https://www.activiti.org/download-bpm 可以下载Activiti相关文档和历史版本压缩包,在 https://www.activiti.org/javadocs/6.latest/ 中可以查看Activiti的相关接口文档。

2:Javadocs

  作为程序员都知道,官方的才是正宗的,才是唯一出处。javadocs就是开发人员和Activiti交流的“语言”。所以在Activiti的Javadocs中一共包含11个package

Activiti的Package
包名

作用

org.activiti.engine

  包含上一篇提到的七大引擎接口、异常类定义和流程引擎(ProcessEngine)

及流程引擎配置(Process Engine Configuration),另外还定义了一些运行时

(Runtime)异常类

org.activiti.engine.delegate

  该包定义了处理流程的行为、监听事件的规范。在实际应用中可以在流程定义中

配置实现了监听接口的类处理业务逻辑。

org.activiti.engine.form

  该包应用在内置表单的场景下,在一些企业或客户自定义表单的需求中使用。

定义表单的两种方式:

  第一种:直接在流程定义中设置每个节点的表单内容,可以设置每个字段(Field)

的类型,是否可编辑等属性

  第二种:外置表单形式,通过formkey指定外置表单文件的名称,类型可以是.xml

或 .form表单的读取、提交均可以通过FormService接口完成。

org.activiti.engine.history

  该包包含了历史记录查询对象及查询结果的历史数据对象接口。

  可以查询以下数据:

    历史流程实例(HistoricProcessInstance)

    历史任务(HistoricTask)

    历史活动(HistoricActivity)

    历史详细(HistoricDetail)

org.activiti.engine.identity

  该包可以用来管理身份和认证,功能依托IdentityService接口。在Activiti中有

自己的Identify模块

org.activiti.engine.management

  该包主要用来实现针对流程引擎的管理功能,通过调用接口ManagementService

可以监控引擎状态、任务调度、数据库数据读取

org.activiti.engine.query   该包没有具体功能,定义了查询的公有特性。在查询的XXXQuery接口均继承自Query接口。
org.activiti.engine.repository

  该包包含了针对流程资源的管理与查询。依托RepositoryService接口可以部署流程定义,

自定义表单,规则等文件,还可以读取流程图片,流程定义(bpmn2.0.xml)

org.activiti.engine.runtime

该包主要负责处理Activiti中的运行时数据,主要处理方式包括
  查询当前用户的待签收任务

  待处理任务

  正在处理中的流程实例对象

  启动流程

  流程的挂起和恢复

org.activiti.engine.task

该包包含了任务对象的定义,依托TaskService接口可以对任务(Task)全面管理,例如:

  创建任务

  删除任务

  指派任务

  批注管理

  附件管理

  变量查询

org.activiti.engine.test

顾名思义,该包针对快速创建测试用例提供基类和注解(Annotation)。在测试驱动开发

(TDD : Test Driver Development)中将会非常有用,将会大大方便了验证流程定义中

业务逻辑的正确与否。

3:环境搭建

  3.1 Java环境

    知道了上述信息之后就可以开始搭建开发环境了,既然是基于Java的,那么JDK肯定是必不可少的了。至于Java环境的配置,请参考:

  3.2 Maven环境

    Maven可是一个非常优秀的构建工具(不仅仅是构建),已经被全球众多开发者,开源组织所使用,而Activiti引擎的源码也是使用Maven构建的。Maven在管理依赖上面很有一套哦,自从用了Maven,再也不用关心包冲突了。关于Maven的配置,请参考:

4:配置文件介绍

  这个配置文件是官方给出和Spring继承的配置文件:activiti.cfg.xml

  

<?xml version="1.0" encoding="UTF-8"?>  

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
<property name="databaseSchemaUpdate" value="true"/>
<property name="databaseType" value="h2" />
<property name="history" value="full" />
<property name="jobExecutorActivate" value="false" />
</bean> </beans>
Activti引擎配置管理器的参数及其含义
databaseType

数据库类型,默认H2,使用非H2需要声明。

支持的数据库

  H2

  MySQL

  Oracle

  Postgres

  MSSQL

  DB2

databaseSchemaUpdate

数据库表结构的更新策略,与Hibernate的机制类似

  false:

    什么都不做

  true:

    Activiti的表不存在时自动创建,

    Activiti的jar文件中定义的版本号与数据库中记录的版本号不一致时会自动执行相应的升级脚本

,并且会记录升级过程

  create-drop:

    创建引擎时执行初始化脚本,引擎销毁时执行删除数据库脚本

jobExecutorActivate

  用来设置是否启动作业执行功能,默认为false。在将该值设置为true之后,引擎会不间断地刷新数据库的作业表,

检查是否存在需要执行的作业,有则触发执行,作业的来源有多种,例如各种时间事件或异步任务执行。

history

  用来设置记录历史的级别,默认为audit。支持以下几种类型。

  none:不保存任何历史记录,可以提高系统性能

  activity:保存所有的流程实例,任务、活动信息

  audit:也是Activiti的默认级别。保存所有的流程实例、任务、活动、表单属性

  full:最完整的历史记录,除了包含audit级别的信息之外还保存详细。例如流程变量,表单属性。

Activiti实战02_环境搭建的更多相关文章

  1. activiti实战--第二章--搭建Activiti开发环境及简单示例

    (一)搭建开发环境 学习资料:<Activiti实战> 第一章 认识Activiti 2.1 下载Activiti 官网:http://activiti.org/download.html ...

  2. 2017.2.20 activiti实战--第二章--搭建Activiti开发环境及简单示例(二)简单示例

    学习资料:<Activiti实战> 第一章 搭建Activiti开发环境及简单示例 2.5 简单流程图及其执行过程 (1)leave.bpmn 后缀名必须是bpmn.安装了activiti ...

  3. 2017.2.20 activiti实战--第二章--搭建Activiti开发环境及简单示例(一)搭建开发环境

    学习资料:<Activiti实战> 第一章 认识Activiti 2.1 下载Activiti 官网:http://activiti.org/download.html 进入下载页后,可以 ...

  4. Android内核漏洞利用技术实战:环境搭建&栈溢出实战

    前言 Android的内核采用的是 Linux 内核,所以在Android内核中进行漏洞利用其实和在 一般的 x86平台下的 linux 内核中进行利用差不多.主要区别在于 Android 下使用的是 ...

  5. 项目实战 Prometheus环境搭建

    项目摘要: 本文是搭建一套prometheus环境的教程. 前期准备:准备三台虚拟机,本文以centos7为例. 项目具体实施:分别进入每台虚拟机设置hostname:# hostnamectl se ...

  6. 【JAVAWEB学习笔记】网上商城实战:环境搭建和完成用户模块

    网上商城实战 今日任务 完成用户模块的功能 1.1      网上商城的实战: 1.1.1    演示网上商城的功能: 1.1.2    制作目的: 灵活运用所学知识完成商城实战. 1.1.3    ...

  7. 基于Flask框架的Python web程序的开发实战 <一> 环境搭建

    最近在看<Flask Web开发基于Python的Web应用开发实战>Miguel Grinberg著.安道译 这本书,一步步跟着学习Flask框架的应用,这里做一下笔记 电脑只安装一个P ...

  8. 1、手把手教React Native实战之环境搭建

    React Native 的宗旨是,学习一次,高效编写跨平台原生应用. 在Windows下搭建React Native Android开发环境 1.安装jdk 2.安装sdk    在墙的环境下,为了 ...

  9. Spring cloud微服务安全实战-7-3prometheus环境搭建

    Prmetheus 主要用来做来Metrics的监控和报警,这张图是官方的架构图. 这是他的核心 它的作用是根据我们的配置去完成数据的采集.服务的发现,以及数据的存储. 这是服务的发现,通过Servi ...

随机推荐

  1. .NETFramework:template

    ylbtech-.NETFramework: 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   作者:ylbtech出处:http://y ...

  2. JS程序的基本语法

    JS程序的基本语法 JS是区分大小写的.如:Name和name是两个变量 JS中每一条语句,一般以英文下的分号(;)结束.这个分号不是必须的.为了向PHP兼容,最好加上分号. 运算符和变量,以及操作之 ...

  3. 浅析ES的_source、_all、store、index

    Elasticsearch中有大量关键概念容易混淆,对于初学者来说是噩梦: _source字段里存储了什么? index属性的作用是什么? 何时应该开启_all字段? store属性和_source字 ...

  4. QT 在QTabWidget中设置一些调色板

    这次所做的项目中需要用到如下功能,点击tableWidget中的子项,将会弹出颜色选值对话框,实现子项的改变,如下图所示: 1.首先,将自己定制的调色板放入tableWidget中 for (int ...

  5. 课程笔记-lisanke

    1.判断真需求假需求 真需求:所有人都需要的功能 假需求:只有自己需要的功能 2.找到目标用户 ①不要直接询问是否需要这个功能 ②旁敲侧击式提问:用户使用了什么方式?之前都是怎么做的? case:购物 ...

  6. C++命令行多文件编译(g++)

    在刚开始学Java时用命令行进行编译代码.而C++一直在用IDE, 这次尝试下命令行编译.vs下也可以用cl.exe.link.exe等命令来进行编译 但这次是通过安装MinGW来学习命令编译,主要用 ...

  7. 《代码整洁之道》ch5~ch9读书笔记 PB16110698(~3.15) 第二周

    <代码整洁之道>ch5~ch9读书笔记 本周我阅读了本书的第5~9章节,进一步了解整洁代码需要注意的几个方面:格式.对象与数据结构.错误处理.边界测试.单元测试和类的规范.以下我将分别记录 ...

  8. Ubuntu环境下安装Scala以及安装IntelliJ Scala插件(Plugin)

    一.Scala介绍 1.结合Spark处理大数据 这是Scala的一个主要应用,而且Spark也是那Scala写的. 2.Java的脚本语言版  可以直接写Scala的脚本,也可以在.sh直接使用Sc ...

  9. 【学术篇】NOIP2016 D1T3 luogu1850换教室

    题目链接:点击这里献出你宝贵的时间(是用来做题不是捐赠Emmmm).. Emmmm我太弱了= = 做完这题我觉得我应该去打星际..这题怎么就有重边了呢.. 这题就是一道期望= =当时考场上好像完全不会 ...

  10. Linux 运维日常排错

    硬盘与IO df -Th #查看挂载和文件系统类型.检查是否有空间用满,是否有业务数据未使用独立分区?   iostat -x 1 1. 检查iowait是否持续在15%以上,说明硬盘负载高. 2. ...