工作流学习(三)

来源:互联网 发布:网络没问题lol连不上 编辑:程序博客网 时间:2024/05/21 17:36

数据库表命名规则:

Activiti工作流引擎的数据库表中的表名称都是以 ACT_.第二部分两个字母表示表的类型。使用模糊匹配的方式说明表的类型匹配activiti的服务API.

·         ACT_RE_*: RE代表仓储(Repository).这种表前缀以“static”表示流程定义信息或者流程资源信息(如流程的图表和规则等).

·         ACT_RU_*: RU标识为运行(Runtime)时表。包含流程实例,用户任务和变量任务等在运行时的数据信息。这些表只存储Activiti在流程实例运行执行的数据,在流程结束的时候从表中去除数据。从而保持运行时候数据的表的快速和小数据量.

·         ACT_ID_*:ID标识为唯一(Identity)的。包含一些唯一的信息如用户,用户做等信息。

·         ACT_HI_*:HI表示历史数据(History)表,包括过期的流程实例,过期的变量和过期的任务等。

·         ACT_GE_*:GE表示公用(General data)的数据库表类型。

ProcessEngine接口中暴露了在BPMN和工作流中中所有操作的服务接口。

  • RuntimeService: 用户获取流程实例相关的各种运行时信息.
  • TaskService: 暴露服务用于操作人工操作的任务例如代办( claiming, completing and assigning tasks).
  • IdentityService: 这个服务用于管理用户和用户组已经用户和用户组关系等的。
  • ManagementService: 暴露引擎飞管理和主要操作。
  • HistoryService:服务暴露过期流程实例等信息。

 

在工作流activiti流程引擎中可以通过activiti.cfg.xml配置。

ProcessEngineConfiguration配置一个流程引擎,在用户应用中创建一个流程引擎的可以通过多种方式:1.基于默认的配置文件创建一个流程引擎:  ProcessEngine processEngine = ProcessEngineConfiguration
      .createProcessEngineConfigurationFromResourceDefault()
      .buildProcessEngine();
2.在缺少配置文件创建一个流程引擎ProcessEngine processEngine = ProcessEngineConfiguration
      .createStandaloneProcessEngineConfiguration()
      .buildProcessEngine();
3.获取一个默认的流程引擎ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine()
 
在工作流activiti的classpath路径中activiti.cfg.xml文件位于activiti-5.6\setup\files\cfg.activiti\standalone中。
Spring的配置内容如下:

<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="mailServerHost" value="mail.my-corp.com" /> 

    <property name="mailServerPort" value="5025" />    

  </bean>

 

</beans>
备注:上面activiti.cfg.xml配置必须spring,但是activiti工作流对spring并不是必须的。
                                             
0 0
原创粉丝点击