• Activiti获取ProcessEngine的三种方法


    1.通过ProcessEngineConfiguration获取

     1 package cn.lonecloud.mavenActivi;
     2 
     3 import org.activiti.engine.ProcessEngine;
     4 import org.activiti.engine.ProcessEngineConfiguration;
     5 import org.junit.Test;
     6 /**
     7  * 通过使用ProcessEngineConfiguration获取
     8  * @Title: ConfigByClass.java
     9  * @Package cn.lonecloud.mavenActivi
    10  * @Description: 
    11  * @author lonecloud
    12  * @date 2016年8月22日 下午10:50:33
    13  */
    14 public class ConfigByClass {
    15     @Test
    16     public void config() {
    17         //获取config对象
    18         ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration
    19                 .createStandaloneProcessEngineConfiguration();
    20         //Jdbc设置
    21         String jdbcDriver = "com.mysql.jdbc.Driver";
    22         processEngineConfiguration.setJdbcDriver(jdbcDriver);
    23         String jdbcUrl = "jdbc:mysql://localhost:3306/mavenActiviti?useUnicode=true&characterEncoding=utf-8";
    24         processEngineConfiguration.setJdbcUrl(jdbcUrl);
    25         String jdbcUsername = "root";
    26         processEngineConfiguration.setJdbcUsername(jdbcUsername);
    27         String jdbcPassword = "123456";
    28         processEngineConfiguration.setJdbcPassword(jdbcPassword);
    29         /**
    30          * Checks the version of the DB schema against the library when the
    31          * process engine is being created and throws an exception if the
    32          * versions don't match.
    33          */
    34 //        public static final String DB_SCHEMA_UPDATE_FALSE = "false";//不自动创建新表
    35 
    36         /**
    37          * Creates the schema when the process engine is being created and drops
    38          * the schema when the process engine is being closed.
    39          */
    40 //        public static final String DB_SCHEMA_UPDATE_CREATE_DROP = "create-drop";//每次运行创建新表
    41 
    42         /**
    43          * Upon building of the process engine, a check is performed and an
    44          * update of the schema is performed if it is necessary.
    45          */
    46 //        public static final String DB_SCHEMA_UPDATE_TRUE = "true";设置自动对表结构进行改进和升级
    47         //设置是否自动更新
    48         processEngineConfiguration
    49                 .setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
    50         //获取引擎对象
    51         ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
    52         processEngine.close();
    53     }
    54 }

    2.通过ProcessEngineConfiguration载入xml文件

    xml文件:

     1 <beans xmlns="http://www.springframework.org/schema/beans"
     2     xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
     3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     4     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
     5 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
     6 http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
     7     <!--这里的类太多别导错了 -->
     8     <bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
     9         <!-- 配置流程引擎配置对象 -->
    10         <property name="jdbcDriver" value="com.mysql.jdbc.Driver"></property>
    11         <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/activiti?useUnicode=true&amp;characterEncoding=utf-8"></property>
    12         <property name="jdbcUsername" value="root"></property>
    13         <property name="jdbcPassword" value="123456"></property>
    14         <!-- 注入数据源信息 -->
    15         <property name="databaseSchemaUpdate" value="true"></property>
    16     </bean>
    17     
    18     <bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean">
    19         <!-- 注入自动建表设置 -->
    20         <property name="processEngineConfiguration" ref="processEngineConfiguration"></property>
    21     </bean>
    22 </beans>

    java

     1 package cn.lonecloud.mavenActivi;
     2 
     3 import org.activiti.engine.ProcessEngine;
     4 import org.activiti.engine.ProcessEngineConfiguration;
     5 import org.activiti.engine.ProcessEngines;
     6 import org.junit.Test;
     7 /**
     8  * 通过通过配置文件进行初始化获取引擎对
     9  * @Title: ConfigByConfig.java
    10  * @Package cn.lonecloud.mavenActivi
    11  * @Description: 
    12  * @author lonecloud
    13  * @date 2016年8月22日 下午10:40:35
    14  */
    15 public class ConfigByConfig {
    16     /**
    17      * 通过配置文件进行初始化获取引擎对象
    18      * @Description:
    19      */
    20     @Test
    21     public void configByConf(){
    22         //载入资源
    23         ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
    24         //创建引擎
    25         ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
    26         processEngine.getRepositoryService();
    27     }
    28  }
    

    3.通过默认载入activiti.cfg.xml进行获取

    1      * 通过默认载入activiti.cfg.xml进行获取
    2      * @Description:推荐使用
    3      */
    4     @Test
    5     public void configByDefault(){
    6         //通过获取载入默认获取
    7         ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
    8         processEngine.close();
    9     }

    这里的xml文件名必须设置为activiti.cfg.xml

  • 相关阅读:
    JS从后台获取数据,前台动态添加tr标签中的td标签
    Java方式导出EXCEL表格
    框架搭建相关博文
    Spring框架相关博文集
    Eclipse相关工具使用
    关于Spring Boot的博客集合
    Springboot spring data jpa 多数据源的配置01
    springboot1.X 到2.X 的改变
    Spring-Boot devtools项目自动重启
    JSR 303
  • 原文地址:https://www.cnblogs.com/lonecloud/p/5797532.html
Copyright © 2020-2023  润新知