从零开始学习Activiti工做流,记录下学习过程。java
关于工做流的简介没什么好介绍了,只能说是个颇有用的东西,数据库中23张表分别有什么用网上也有很详细的介绍,这里也很少加说明。activiti开发中除了须要必备的包以外,JDK要求在1.6以上,开发环境为Eclipse3.7或者以上版本,myeclipse为8.6版本,目前我使用的是JDK1.8.0_45和myeclipse2014。mysql
在开发Activiti时须要安装Activiti设计器。在myeclipse中打开Help -> Install New Software. 点击Add,填入Name: Activiti BPMN 2.0 designer Location: http://activiti.org/designer/update/ 选中 "Contact all updates sites.."便可安装,这种方式须要连网。或者将下载好的插件所有内容放入eclipse根目录的dropins文件夹下。便可完成设计器插件的安装。安装完成后,打开菜单Windows->Preferences->Activiti->Save,勾选Create process definition image when saving the diagrm。这样会在流程文件保存时自动生成流程图。spring
以上完成全部配置,便可开始设计Activiti工做流。sql
下面开始第一个activiti工做流,数据库使用mysql,若是使用其余数据库在数据库部分略做修改便可。数据库
新建一个activiti工程,获得如图所示的文件结构eclipse
在根目录新建一个lib文件夹,导入须要的jar包。方便后续查看和管理。至此,一个基本的工程就创建好了,如今就能够开始开发activiti了。学习
因为activiti一共有23张数据库表,开发时应该先生成这23张数据库表,我使用的是数据库的方式生成。测试
首先,在src/test/java中创建一个名为activiti.cfg.xml的配置文件,主要是用于创建数据库链接。代码以下ui
<?xml version="1.0" encoding="UTF-8"?>spa
<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="jdbcDriver" value="com.mysql.jdbc.Driver"></property>
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/itcast0711activiti?useUnicode=true&characterEncoding=utf8"></property>
<property name="jdbcUsername" value="root"></property>
<property name="jdbcPassword" value="123456"></property>
<!-- 没有表建立表 -->
<property name="databaseSchemaUpdate" value="true"></property>
</bean>
</beans>
很基本的一些配置,创建数据库链接。在src/test/java中,新建一个unit package,新建Testactiviti.java文件,代码以下
package junit;
import org.junit.Test;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
public class TestActiviti {
//使用配置文件建立数据库表
@Test
public void createTable() {
ProcessEngine processEngine = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml") //
.buildProcessEngine();
}
}
使用junit测试运行createTable()便可在数据库中完成23张表的创建,表以下图
至此,activiti须要的表就创建完成了