Activiti工作流框架学习(四)

activiti的配置文件解析(activiti.cfg.xml)

  • 了解相关字段信息
  • ProcessEngine的配置
  • 数据库的配置
  • 数据库参数的动态获取
  • Spring总体配置

一、了解相关字段

Activiti核心配置文件,配置流程引擎创建工具的基本参数和数据库连接池参数。
定义数据库配置参数:
1)jdbcUrl:数据库的JDBC URL。
2)jdbcDriver:对应不同数据库类型的驱动。
3)jdbcUsername:连接数据库的用户名。
4)jdbcPassword:连接数据库的密码。
基于JDBC参数配置的数据库连接 会使用默认的MyBatis连接池。下面的参数可以用来配置连接池(来自MyBatis参数):
1)jdbcMaxActiveConnections:连接池中处于被使用状态的最大值,默认为10.
2)jdbcMaxIdleConnections:连接池中处于空闲状态的连接的最大值。
3)jdbcMaxCheckoutTime:连接被取出来使用的最长时间,超时时间会被强制回收。默认为20000(20秒)。
4)jdbcMaxWaitTime:这是一个底层配置,让连接池可以在长时间无法获得连接时,打印一条日志,并重新尝试获取一个连接。(避免因为错误配置导致沉默的操作失败)。默认为20000(20秒)。


二、ProcessEngine的配置


注意:单独创建流程引擎与Spring方式创建流程引擎是不一样的,区别在于:ProcessEngineConfiguration的class。

单独:org.activiti.engine.impI.cfg.StandaloneProcessEngineConfiguration

Spring环境下:org.activiti.spring.SpringProcessEngineConfiguration

获得ProcessEngine的最简单办法是:

ProcessEngine processEngine = ProcessEngine.getDefaultProcessEngine();



2.1 单独模式
它会去读取classpath下的activiti.cfg.xml( 文件必须叫这个),基于这个配置来构建引擎。

Activiti工作流框架学习(四)_第1张图片
2.2 Spring模式

如果要在Spring环境下使用流程引擎,配置文件名可以叫做spring-activiti.xml等 自定义的名字

而且类要发生变化:org.activiti.spring.SpringProcessEngineConfiguration

Activiti工作流框架学习(四)_第2张图片

然后,这个spring-activiti.xml文件要被引用,名称要对应。
比如我的项目里,是这么引用的:web.xml引用spring-app.xml,spring-app.xml引用spring-activiti.xml

Activiti工作流框架学习(四)_第3张图片


三、数据库的配置

由前面可以知道,不管是单独模式还是spring模式,ProcessEngineConfiguration里面的属性配置是一样的。
但是数据库的配置也有两种方式。

3.1 JDBC方式
Activiti工作流框架学习(四)_第4张图片

3.2 dataSource方式

Activiti工作流框架学习(四)_第5张图片


四、数据库参数的动态获取

由前面可知,配置数据库时,是直接写的参数,这样不太好。建议把配置的参数单独写在一个文件里,然后value采取动态获取的方式。
dataSource方式和jdbc方式,动态获取的方式是一样的,就只写datasource下的了。

4.1 db.properties

Activiti工作流框架学习(四)_第6张图片

4.2 spring-activiti.xml里动态获取

Activiti工作流框架学习(四)_第7张图片

Activiti工作流框架学习(四)_第8张图片


五、Spring总体配置

综上,我用的是Spring模式+DataSource方式+动态获取。
涉及的文件有:web.xml,spring-app.xml,spring-activiti.xml,spring-db.xml,db.properties.

所以总的配置过程如下:

1、web.xml 引用Spring的总配置文件spring-app.xml

Activiti工作流框架学习(四)_第9张图片

2、spring-app.xml引用spring-activiti.xml和spring-db.xml


3、spring-activti.xml中的配置ProcessEngine这个bean,属性值是processEngineConfiguration.


4、spring-activiti.xml配置processEngineConfiguration,采用dataSource配置方式

Activiti工作流框架学习(四)_第10张图片

5、dataSource的配置写在spring-db.xml里

Activiti工作流框架学习(四)_第11张图片

6、dataSource里的参数采取动态获取,参数写在db.properties里

Activiti工作流框架学习(四)_第12张图片

你可能感兴趣的:(Activiti工作流)