数据库:mysql 5.7.19
开发环境:idea+maven
操作系统:windows10
工具:navicat premium 12.0.11
* mysql5.7.19的安装配置:参考我的上一篇博文http://blog.csdn.net/jenyzhang/article/details/77932328
* 安装navicat premium 12.0.11
安装好navicat之后,连接到mysql (如下图)
连接到mysql之后,新建数据库“activiti”(如下图)
2.1 下载Maven
官方地址:http://maven.apache.org/download.cgi
2.2 修改环境变量
2.2.1新建MAVEN_HOME
2.2.2在path中加入:%MYSQL_HOME%\bin
2.2.3 重启,查看是否配置成功
mvn -version
2.2.4 添加本地库(修改conf/settings.xml)
添加
E:\Program Files (x86)\m2
这里
E:\Program Files (x86)\m2 是本地库的路径
(3)idea安装,与maven配置
idea安装好之后,maven配置方法如下:
3.1 file-->settings-->maven
file-->new-->project-->maven
(2)编辑pom.xml
4.0.0
com.activiti
activiti-demo
1.0-SNAPSHOT
org.activiti
activiti-engine
5.22.0
org.activiti
activiti-spring
5.22.0
org.codehaus.groovy
groovy-all
2.4.3
org.slf4j
slf4j-api
1.7.6
org.slf4j
slf4j-jdk14
1.7.6
junit
junit
4.12
mysql
mysql-connector-java
5.1.38
(3)在java/resource下新建activiti.cfg.xml
上面是actviti配置中mqsql数据库联连的配置
(4)在test/java下新建测试类:createTable.java 创建activiti所需的23张表
package com.activiti.createTable1;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
import org.activiti.engine.repository.Deployment;
import org.junit.Test;
/**
* Created by zyni on 2017/10/6.
*/
public class createTable {
@Test
public void createTableTest(){
//表不存在的话创建表
ProcessEngine processEngine = ProcessEngineConfiguration
.createProcessEngineConfigurationFromResource("activiti.cfg.xml")
.buildProcessEngine();
System.out.println("------processEngine:" + processEngine);
}
}
运行该测试类
可以看到下面的输出信息
然后查看mysql数据库,可以看到“activiti”数据库下己经新建了23张表
(5)布署一个流程
接下来就可以进行activiti的各项操作了。首先,我们来布署一个流程。
先在java/resource/下新建diagrams目录,然后把流程图放到这个目录下
流程图类似于这样:
然后,我们再写一个测试类.deployTest.java
package com.activiti.createTable1;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
import org.activiti.engine.repository.Deployment;
import org.junit.Test;
/**
* Created by zyni on 2017/10/6.
*/
public class deployTest {
@Test
public void deployTest1(){
//表不存在的话创建表
ProcessEngine processEngine = ProcessEngineConfiguration
.createProcessEngineConfigurationFromResource("activiti.cfg.xml")
.buildProcessEngine();
System.out.println("------processEngine:" + processEngine);
//创建流程
Deployment deployment = processEngine.getRepositoryService().createDeployment().name("请假程序")
.addClasspathResource("diagrams/leave.bpmn").addClasspathResource("diagrams/leave.png").deploy();
System.out.println(deployment.getId());
System.out.println(deployment.getName());
}
}