3.1 创建ProcessEngine

通过名为的XML文件配置activiti.cfg.xml(使用Spring样式构建流程引擎,则不适用)

获得a的最简单方法ProcessEngine是使用org.activiti.engine.ProcessEngines类

ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine()

这将activiti.cfg.xml在类路径中查找文件,并根据该文件中的配置构造引擎。以下代码段显示了示例配置

<beans xmlns="http://www.springframework.org/schema/beans"
       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">

  <bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">

    <property name="jdbcUrl" value="jdbc:h2:mem:activiti;DB_CLOSE_DELAY=1000" />
    <property name="jdbcDriver" value="org.h2.Driver" />
    <property name="jdbcUsername" value="sa" />
    <property name="jdbcPassword" value="" />

    <property name="databaseSchemaUpdate" value="true" />

    <property name="jobExecutorActivate" value="false" />
    <property name="asyncExecutorEnabled" value="true" />
    <property name="asyncExecutorActivate" value="false" />

    <property name="mailServerHost" value="mail.my-corp.com" />
    <property name="mailServerPort" value="5025" />
  </bean>

</beans>

配置XML实际上是一个Spring配置。这并不意味着Activiti只能在Spring环境中使用!我们只是在内部利用Spring的解析和依赖注入功能来构建引擎
ProcessEngineConfiguration对象也可以使用配置文件以编程方式创建。也可以使用不同的bean id

ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault();
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource(String resource);
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource(String resource, String beanName);
ProcessEngineConfiguration.createProcessEngineConfigurationFromInputStream(InputStream inputStream);
ProcessEngineConfiguration.createProcessEngineConfigurationFromInputStream(InputStream inputStream, String beanName);

也可以不使用配置文件,并根据默认值创建配置(有关更多信息,请参阅不同的受支持类

ProcessEngineConfiguration.createStandaloneProcessEngineConfiguration();
ProcessEngineConfiguration.createStandaloneInMemProcessEngineConfiguration();

如果需要,所有这些ProcessEngineConfiguration.createXXX()方法都返回ProcessEngineConfiguration可以进一步调整的方法。调用buildProcessEngine()操作后,ProcessEngine创建一个:

ProcessEngine processEngine = ProcessEngineConfiguration.createStandaloneInMemProcessEngineConfiguration()
  .setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_FALSE)
  .setJdbcUrl("jdbc:h2:mem:my-own-db;DB_CLOSE_DELAY=1000")
  .setAsyncExecutorEnabled(true)
  .setAsyncExecutorActivate(false)
  .buildProcessEngine();
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 刚刚过去了一个有意义的一天,第一次参加公司的年会、第一次在实际运用中使用到自己写的程序应用、同时也是第一次体会了在...
    寻羽的皓阅读 223评论 0 0
  • 之前跟张老师调侃说要走,谁成想最终一语成谶。当真的要走的时候,还是有很多不忍。 下午下班后,张老师,...
    我们一起爬火车阅读 200评论 0 1
  • 我们改变不了环境,但我们可以改变自已。我们改变不了事实,但我们可以改变态度。我们改变不了过去,但我们可以改变现...
    百味文堂阅读 208评论 0 0
  • 2016是移动互联网创业元年 2016是超级个体崛起之年 2016是本我/真我/超我的系统化的颠覆之年 说到颠覆,...
    平行夏阅读 256评论 0 0
  • //保存到sdcard上,文件名是capture.pcap/data/local/tmp/tcpdump -i a...
    北雁南飞_8854阅读 246评论 0 0