一,配置文件
1,默认配置文件 activiti.cfg.xml
<!-- 流程引擎配置的bean -->
<bean id="processEngineConfiguration"
class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/act" />
<property name="jdbcDriver" value="com.mysql.jdbc.Driver" />
<property name="jdbcUsername" value="root" />
<property name="jdbcPassword" value="root1234" />
<property name="databaseSchemaUpdate" value="true" />
</bean>
2,指定配置文件
// 指定配置文件创建ProcessEngineConfiguration
ProcessEngineConfiguration config = ProcessEngineConfiguration
.createProcessEngineConfigurationFromResource("my-activiti1.xml");
3,指定配置文件和配置bean
ProcessEngineConfiguration config = ProcessEngineConfiguration
.createProcessEngineConfigurationFromResource(
"my-activiti2.xml", "test");
二,数据库策略配置
<property name="databaseSchemaUpdate" value="true" />
false:流程引擎对比之前的版本,如果版本不对,直接报错
true:启动的时候activiti对所有的数据库进行更新
create-drop;启动的创建表,close()的时候drop表
drop-create:隐藏,先drop表,再创建表
DBCP数据源的配置:
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="url" value="jdbc:mysql://localhost:3306/act" />
<property name="DriverClassName" value="com.mysql.jdbc.Driver" />
<property name="userName" value="root" />
<property name="password" value="root1234" />
</bean>
<bean id="processEngineConfiguration"
class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
<property name="dataSource" ref="dataSorce"/>
</bean>
三,历史数据配置
<property name="history" value="activity"/>
none:不保存任何历史数据,这在流行执行过程中,最高效的
activity:级别高于none,保存流程实例与流程行为,其他的数据不保存
audit:除activity保存的数据外,还会保存全部的流程任务,及其属性,audit为history默认值
full:保存历史数据的最高级别,除了保存audit的级别数据外,还会保存其他全部流程的相关细节数据包括一些流程参数等
四,asyncExecutorActivate异步执行器(后续补充)
五,邮件服务器
<bean id="processEngineConfiguration"
<property name="mailServerHost" value="smtp.163.com"></property>
<property name="mailServerPort" value="25"></property>
<property name="mailServerDefaultFrom" value="qinmoumou@163.com"></property>
<property name="mailServerUsername" value="qinmoumou@163.com"></property>
<property name="mailServerPassword" value="123456"></property>
</bean>
public static void main(String[] args) {
ProcessEngineConfiguration config = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("mail.xml");
System.out.println(config.getMailServerHost());
}
六,服务组件
RepositoryService:提供一系列管理流程定义和流程部署的API。
RuntimeService:在流程运行时对流程实例进行管理与控制。
TaskService:对流程任务进行管理,例如任务提醒、任务完成和创建任务分本任务等。
IdentityService:提供对流程角色数据进行管理的API,这些角色数据包括用户组、用户以及它们之间的关系。
ManagementService:提供对流程引擎进行管理和维护的服务。
HistoryService:对流程的历史数据进行操作,包括查询、删除这些历史数据。
DynamicBpmnService:使用该服务,可以不需要重新部署流程模型,就可以实现对流程模型的部分修改。