您的位置:首页 > 其它

【activiti】创建activiti流程引擎以及相应表的方式

2018-01-11 10:42 337 查看
第一种:通过代码方式创建引擎相关表

/**
* 取得工作流引擎
** 1.通过代码形式创建
*取得ProcessEngineConfiguration对象
*设置数据库连接属性
*设置创建表的策略 (当没有表时,自动创建表)
*通过ProcessEngineConfiguration对象创建 ProcessEngine 对象
**/
@Test
public void createProcessEngine1(){
//创建ProcessEngineConfiguration对象
ProcessEngineConfiguration engineConfiguration = ProcessEngineConfiguration.
createStandaloneProcessEngineConfiguration();
//设置数据库连接属性
engineConfiguration.setJdbcDriver("com.mysql.jdbc.Driver");
engineConfiguration.setJdbcUrl("jdbc:mysql://localhost:3306/activitiDB?createDatabaseIfNotExist=true" +
"&useUnicode=true&characterEncoding=utf8");
engineConfiguration.setJdbcUsername("root");
engineConfiguration.setJdbcPassword("aini1314");
// 设置创建表的策略 (当没有表时,自动创建表)
//		  public static final java.lang.String DB_SCHEMA_UPDATE_FALSE = "false";//不会自动创建表,没有表,则抛异常
//		  public static final java.lang.String DB_SCHEMA_UPDATE_CREATE_DROP = "create-drop";//先删除,再创建表
//		  public static final java.lang.String DB_SCHEMA_UPDATE_TRUE = "true";//假如没有表,则自动创建
engineConfiguration.setDatabaseSchemaUpdate("true");
//通过ProcessEngineConfiguration对象创建 ProcessEngine 对象
ProcessEngine processEngine = engineConfiguration.buildProcessEngine();
System.out.println("流程引擎创建成功");
processEngine.close();

}


第二种方式:通过配置文件来获取:

/**
* 第二种方式创建:
* 通过xml配置方式创建,activiti.cfg.xml
*/
@Test
public void createProcessEngine2(){
Proces
4000
sEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration.
createProcessEngineConfigurationFromResource("activiti.cfg.xml");
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
System.out.println("使用配置activiti.cfg.xml创建流引擎成功");
processEngine.close();
}


第三种: 通过ProcessEngines 来获取默认的流程引擎

/**
* 第三种方式:通过ProcessEngines 来获取默认的流程引擎
* 默认会加载类路径下的 activiti.cfg.xml :这种方式不好更改
*/
@Test
public void createProcessEngine3(){
ProcessEngine processEngine=ProcessEngines.getDefaultProcessEngine();
System.out.println("通过ProcessEngines 来获取流程引擎");
processEngine.close();
}


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"> <!-- 配置 ProcessEngineConfiguration  -->
<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/activitiDB2?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf8"></property>
<property name="jdbcUsername" value="root"></property>
<property name="jdbcPassword" value="aini1314"></property>
<!-- 配置创建表策略 :没有表时,自动创建 -->
<property name="databaseSchemaUpdate" value="true"></property>

</bean>

</beans>


我们可以通过以上三种方式来进行自动建表,获取流引擎

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: