Activiti获取ProcessEngine的三种方法
1.通过ProcessEngineConfiguration获取
package cn.lonecloud.mavenActivi; import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
import org.junit.Test;
/**
* 通过使用ProcessEngineConfiguration获取
* @Title: ConfigByClass.java
* @Package cn.lonecloud.mavenActivi
* @Description:
* @author lonecloud
* @date 2016年8月22日 下午10:50:33
*/
public class ConfigByClass {
@Test
public void config() {
//获取config对象
ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration
.createStandaloneProcessEngineConfiguration();
//Jdbc设置
String jdbcDriver = "com.mysql.jdbc.Driver";
processEngineConfiguration.setJdbcDriver(jdbcDriver);
String jdbcUrl = "jdbc:mysql://localhost:3306/mavenActiviti?useUnicode=true&characterEncoding=utf-8";
processEngineConfiguration.setJdbcUrl(jdbcUrl);
String jdbcUsername = "root";
processEngineConfiguration.setJdbcUsername(jdbcUsername);
String jdbcPassword = "123456";
processEngineConfiguration.setJdbcPassword(jdbcPassword);
/**
* Checks the version of the DB schema against the library when the
* process engine is being created and throws an exception if the
* versions don't match.
*/
// public static final String DB_SCHEMA_UPDATE_FALSE = "false";//不自动创建新表 /**
* Creates the schema when the process engine is being created and drops
* the schema when the process engine is being closed.
*/
// public static final String DB_SCHEMA_UPDATE_CREATE_DROP = "create-drop";//每次运行创建新表 /**
* Upon building of the process engine, a check is performed and an
* update of the schema is performed if it is necessary.
*/
// public static final String DB_SCHEMA_UPDATE_TRUE = "true";设置自动对表结构进行改进和升级
//设置是否自动更新
processEngineConfiguration
.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
//获取引擎对象
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
processEngine.close();
}
}
2.通过ProcessEngineConfiguration载入xml文件
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>
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/activiti?useUnicode=true&characterEncoding=utf-8"></property>
<property name="jdbcUsername" value="root"></property>
<property name="jdbcPassword" value="123456"></property>
<!-- 注入数据源信息 -->
<property name="databaseSchemaUpdate" value="true"></property>
</bean> <bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean">
<!-- 注入自动建表设置 -->
<property name="processEngineConfiguration" ref="processEngineConfiguration"></property>
</bean>
</beans>
java
package cn.lonecloud.mavenActivi; import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
import org.activiti.engine.ProcessEngines;
import org.junit.Test;
/**
* 通过通过配置文件进行初始化获取引擎对
* @Title: ConfigByConfig.java
* @Package cn.lonecloud.mavenActivi
* @Description:
* @author lonecloud
* @date 2016年8月22日 下午10:40:35
*/
public class ConfigByConfig {
/**
* 通过配置文件进行初始化获取引擎对象
* @Description:
*/
@Test
public void configByConf(){
//载入资源
ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
//创建引擎
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
processEngine.getRepositoryService();
}
}
3.通过默认载入activiti.cfg.xml进行获取
* 通过默认载入activiti.cfg.xml进行获取
* @Description:推荐使用
*/
@Test
public void configByDefault(){
//通过获取载入默认获取
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
processEngine.close();
}
这里的xml文件名必须设置为activiti.cfg.xml
Activiti获取ProcessEngine的三种方法的更多相关文章
- 体温数据上传程序开发+获取时间的三种方法+DB Browser下载及安装
今天开始了体温上传程序的开发 今日所学: 获取时间 (21条消息) (转)安卓获取时间的三种方法_sharpeha的博客-CSDN博客_安卓获取时间 DB Browser安装教程 (20条消息) sq ...
- java 获取随机数的三种方法
方法1(数据类型)(最小值+Math.random()*(最大值-最小值+1))例:(int)(1+Math.random()*(10-1+1))从1到10的int型随数 方法2获得随机数for (i ...
- URL转Drawable之 Android中获取网络图片的三种方法
转载自: http://doinone.iteye.com/blog/1074283 Android中获取网络图片是一件耗时的操作,如果直接获取有可能会出现应用程序无响应(ANR:Applicatio ...
- android系统通过图片绝对路径获取URI的三种方法
最近做项目要通过图片的绝对路径找到图片的URI,然后删除图片,小小总结一下获取URI的方法,亲自试验在 android 4.1.3的系统上都是可用的. 1.将所有的图片路径取出,遍历比较找到需要的路径 ...
- js jquery 获取服务器控件的三种方法
由于ASP.NET网页运行后,服务器控件会随机生成客户端id,jquery获取时候不太好操作,google了下,总结有以下3种方法: 服务器控件代码:<asp:TextBox ID=" ...
- 获取IP的三种方法
第一种 取本主机ip地址 public string GetLocalIp() { ///获取本地的IP地址 string AddressIP = string.Empty; foreach (IPA ...
- node获取当前路径的三种方法
node提供了3种获取路径的方法 ,在当前目录下,运行node const {resolve} = require('path') console.log('__dirname : ' + __di ...
- java获取文件名的三种方法
import java.io.File; import java.util.Arrays; public class FileName { /** * @param args */ public st ...
- js获取时间戳的三种方法
1.Date.Now() 2.new Date().getTime() 3.Date.parse(new Date()) 其中1和2是相同含义 chrome控制台键入:Date.now() ===ne ...
随机推荐
- TinyXML 的简单介绍以及使用
先说几句重点: 1,tinyxml 生成或解析XML非常好用 2,tinyxml 利用DOM(文档对象模型)操作XML,根节点与各个子节点相当于形成一棵树 3,只要你了解tinyxml的用法,可以只n ...
- A/X家FPGA架构及资源评估
评估对比xilinx以及altera两家FPGA芯片逻辑资源. 首先要说明, 现今FPGA除了常规逻辑资源,还具有很多其他片内资源比如块RAM.DSP单元.高速串行收发器.PLL.ADC等等,用以应对 ...
- webpack最简示例
安装webapck webpack依赖node环境,所以在此之前要保证系统中有node环境. 打开cmd控制台 $ npm install webpack -g 全局安装webpack 配置模块 we ...
- 使用redis所维护的代理池抓取微信文章
搜狗搜索可以直接搜索微信文章,本次就是利用搜狗搜搜出微信文章,获得详细的文章url来得到文章的信息.并把我们感兴趣的内容存入到mongodb中. 因为搜狗搜索微信文章的反爬虫比较强,经常封IP,所以要 ...
- c#结构体、打他table、excel、csv互转
1.csv相关 public static class CsvHelper { /// <summary> /// 根据csv路径获取datatable /// </summary& ...
- centos 编译安装net-snmp 5.6.2
1.准备环境 yum -y install make gcc gcc-c++ gcc-g77 openssl openssl-devel 常用lib安装可参照本文 2.编译和安装 首先我们需要下载Ne ...
- ssh 设置私钥实现两台linux主机无密码访问
在服务器主机上(称为A主机) 创建公钥与私钥: ssh-keygen -t rsa 一路回车,如果想设置密码短语,在提示 passphrase 的时候设置密码短语 查看生成的公钥及私钥: ls ~/. ...
- HDU 3374 String Problem
最大最小表示法与KMP求循环节 最大最小表示法 最大最小表示法与KMP求循环节的模板题, #include <iostream> #include <cstdio> #incl ...
- BZOJ 2005: [Noi2010]能量采集 [莫比乌斯反演]
题意:\((0,0)\)到\((x,y),\ x \le n, y \le m\)连线上的整点数\(*2-1\)的和 \((0,0)\)到\((a,b)\)的整点数就是\(gcd(a,b)\) 因为. ...
- 【转】我读过最好的epoll讲解(来自知乎)
首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象.不管是文件,还是套接字,还是管道,我们都可以把他们看作流.之后我们来讨论I/O的操作,通过read,我 ...