流程表创建
创建 .bpmn 文件,画好流程图,把 .bpmn文件改名为 .xml文件,选择该文件,按下图操作
之后就能得到流程图,复制到resource文件内
获得工作流数据引擎对象
方法一.java文件直接创建
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
public class Text1 {
//初始化数据库
public static void main(String[] args) {
ProcessEngineConfiguration configuration=
ProcessEngineConfiguration.createStandaloneProcessEngineConfiguration();
//指定数据库的连接信息
configuration.setJdbcUrl("jdbc:mysql://localhost:3306/bpmnl?createDatabaseIfNotExist=true");
configuration.setJdbcDriver("com.mysql.jdbc.Driver");
configuration.setJdbcUsername("root");
configuration.setJdbcPassword("123");
//设置数据表的操作模式
configuration.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
System.out.println("数据库操作");
//得到工作流引擎对象
ProcessEngine pe=configuration.buildProcessEngine();
System.out.println(pe);
}
}
方法二
配置好activiti.cfg.xml
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
public class Text2 {
public static void main(String[] args) {
ProcessEngine pe=
ProcessEngineConfiguration
.createProcessEngineConfigurationFromResource("activiti.cfg.xml")
.buildProcessEngine();
System.out.println(pe);
}
}
方法三
获得工作流数据引擎对象
注意:配置文件的名称必须是:activiti.cfg.xml
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
public class Text3 {
public static void main(String[] args) {
//获得工作流数据引擎对象
//注意:配置文件的名称必须是:activiti.cfg.xml
ProcessEngine pe=
ProcessEngines.getDefaultProcessEngine();
System.out.println(pe);
}
}
创建流程定义
方法一
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.RepositoryService;
import org.activiti.engine.repository.Deployment;
import org.activiti.engine.repository.DeploymentBuilder;
import org.springframework.stereotype.Repository;
public class Text4 {
public static void main(String[] args) {
//先得到流程引擎对象
ProcessEngine processEngine=
ProcessEngines.getDefaultProcessEngine();
//得到服务对象
RepositoryService repositoryService=processEngine.getRepositoryService();
//创建流程定义,添加资源文件 Deployment 部署
DeploymentBuilder builder=
repositoryService.createDeployment()
.addClasspathResource("a1.bpmn")
.addClasspathResource("a1.png");
//部署(发布流程)
Deployment deployment=builder.deploy();
//查询部署的id信息
System.out.println(deployment.getId()+","+deployment.getName());
}
}
方法二
压缩文件得到流程定义
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.RepositoryService;
import org.activiti.engine.repository.Deployment;
import org.activiti.engine.repository.DeploymentBuilder;
import java.io.InputStream;
import java.util.zip.ZipInputStream;
public class Text5 {
public static void main(String[] args) {
//先得到流程引擎对象
ProcessEngine pe=
ProcessEngines.getDefaultProcessEngine();
//得到服务对象
RepositoryService repositoryService=pe.getRepositoryService();
//创建流程定义,添加资源文件
//得到压缩文件信息
InputStream in=
Text5.class.getClassLoader().getResourceAsStream("a1.zip");
ZipInputStream zipInputStream=new ZipInputStream(in);
DeploymentBuilder builder=
repositoryService.createDeployment()
.addZipInputStream(zipInputStream);
//部署
Deployment deployment=builder.deploy();
//查询部署id
System.out.println(deployment.getId()+","+deployment.getName());
}
}