從零開始學習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須要的表就創建完成了