1 通過eclipse 建立maven項目 pom.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>mvn-act</groupId>
<artifactId>mvn-act-afid</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
<version>5.21.0</version>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring</artifactId>
<version>5.21.0</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>2.4.3</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.6</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>1.7.6</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>
</dependencies>
</project>
其中junit版本為4.12
在resources下添加activiti.cfg.xml 文件,用來配置數據庫的鏈接
文件內容如下:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
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
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
<bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
<property name="jdbcDriver" value="com.mysql.jdbc.Driver"/>
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/act?characterEncoding=utf8"/>
<property name="jdbcUsername" value="root"/>
<property name="jdbcPassword" value="123456"/>
<property name="databaseSchemaUpdate" value="true"/>
</bean>
</beans>
2 創建流程圖
src/main/java目錄下創建一個diagrams,在該文件下建立 Activiti Diagram流程圖,流程圖如下:
id為 myProcessId name 為 Myprocess
3 穿件數據庫,表與寫入數據
創建測試類,測試方法如下:
@Test //
public void ctables(){
//表不存在的話創建表
ProcessEngine processEngine = ProcessEngineConfiguration
.createProcessEngineConfigurationFromResource("activiti.cfg.xml")
.buildProcessEngine();
System.out.println("------processEngine:" + processEngine);
//創建流程
Deployment deployment = processEngine.getRepositoryService().createDeployment().name("請假程序")
.addClasspathResource("diagrams/MyProcess.bpmn").addClasspathResource("diagrams/MyProcess.png").deploy();
System.out.println(deployment.getId());
System.out.println(deployment.getName());
}
運行后如果沒有創建表 則數據庫中創建activiti所需要的表
創建流程后輸出的結果為
2501
請假程序
表中數據如下:
SELECT * FROM act_re_deployment 部署對象表
SELECT * FROM act_ge_bytearray 資源文件表
SELECT * FROM act_re_procdef 流程定義表