流程引擎配置
流程引擎在启动时,需要配置一系列的参数,包括数据库配置、事物配置和Activiti内置的服务配置等。
1、ProcessEngineConfiguration
ProcessEngineConfiguration:Activiti默认的引擎配置管理器名称,提供Activiti流程引擎的全部配置,创建一系列方法,用于读取和解析相应的配置文件。
ProcessEngineConfiguration processEngine = ProcessEngineConfiguration
.createProcessEngineConfigurationFromResourceDefault();
Activiti默认会到ClassPath下读取activiti.cfg.xml配置文件,但是也可以使用
createProcessEngineConfigurationFromResource(String resource)
|
等去读取对应的配置文件(具体请查询API)
2、数据源配置
Activiti支持的数据源有:
H2:默认支持。开源的嵌入式数据库,不需要安装服务器和客户端,适合单元测试;
MySQL:开源关系型数据库,体积小、速度快、免费,推荐;
Oracle:最流行的商业数据库,高性能、高可靠,收费;
Postgres:开源;
DB2:关系型数据库,良好的伸缩性和高效性;
MSSQL:只能用于windows操作系统。
Activiti并不需要使用Spring环境。
JDBC连接数据库
DBCP数据源配置:DBCP是Apache提供的一个数据库连接池。ProcessEngineConfiguration提供了dataSource属性。用户如果不希望直接将JDBC的相关连接属性交给Activiti,可以自己创建数据库连接,然后通过这个dataSource属性设置到ProcessEngineConfiguration中。
//创建DBCP数据源
BasicDataSource ds = new BasicDataSource();
//设置JDBC的各个属性
ds.setUserName("root");
ds.setPassword("123456");
ds.setUrl("jdbc:mysql://localhost:3306/vbpm");
ds.setDriverClassName("com.mysql.jdbc.Driver");
ProcessEngineConfiguration processEngine = ProcessEngineConfiguration
.createProcessEngineConfigurationFromResource("dpcp-coding.xml”);
config.setDataSource(ds);
Activiti默认使用的是MyBatis的数据库连接池,ProcessEngineConfiguration中提供了一些MyBatis的配置。