美文网首页
3.3 数据库配置

3.3 数据库配置

作者: 精简明了 | 来源:发表于2019-01-26 09:37 被阅读0次

有两种方法可以配置Activiti引擎将使用的数据库。第一个选项是定义数据库的JDBC属性:

jdbcUrl 数据库的JDBC URL。

dbcDriver 实现特定数据库类型的驱动程序。

jdbcUsername 用于连接数据库的用户名。

jdbcPassword 连接数据库的密码。

基于提供的JDBC属性构造的数据源将具有默认的[MyBatis](http://www.mybatis.org/)连接池设置。可以选择设置以下属性来调整该连接池(取自MyBatis文档):

jdbcMaxActiveConnections 任何时候连接池最多可以包含的活动连接数。默认值为10。

jdbcMaxIdleConnections 任何时候连接池最多可以包含的空闲连接数。

jdbcMaxCheckoutTime 在强制返回连接之前,可以从连接池中*检出*连接的时间量(以毫秒为单位)。默认值为20000(20秒)。

jdbcMaxWaitTime 这是一个低级别设置,它为池提供了一个机会来打印日志状态,并在它花费异常时间的情况下重新尝试获取连接(以避免在池配置错误时永远无声地失败)默认值是20000(20秒)

示例数据库配置

<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="" />

或者,javax.sql.DataSource可以使用实现(例如来自Apache Commons的 DBCP )

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" >
  <property name="driverClassName" value="com.mysql.jdbc.Driver" />
  <property name="url" value="jdbc:mysql://localhost:3306/activiti" />
  <property name="username" value="activiti" />
  <property name="password" value="activiti" />
  <property name="defaultAutoCommit" value="false" />
</bean>

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

    <property name="dataSource" ref="dataSource" />
    ...

请注意,Activiti不附带允许定义此类数据源的库。因此,您必须确保库(例如来自DBCP)位于类路径中。

无论您使用的是JDBC还是数据源方法,都可以设置以下属性:

  • databaseType:通常不需要指定此属性,因为它是从数据库连接元数据中自动分析的。只应在自动检测失败的情况下指定。可能的值:{h2,mysql,oracle,postgres,mssql,db2}。不使用默认H2数据库时,此属性是必需的。此设置将确定将使用哪些创建/删除脚本和查询。请参阅支持的数据库部分用于哪些类型支持的概述。

  • databaseSchemaUpdate:允许设置策略以在流程引擎启动和关闭时处理数据库模式。

    • false (默认值):在创建流程引擎时检查库模式的版本,如果版本不匹配则抛出异常。

    • true:构建流程引擎时,将执行检查,并在必要时执行架构更新。如果架构不存在,则创建它。

    • create-drop:在创建流程引擎时创建架构,并在关闭流程引擎时删除架构

相关文章

网友评论

      本文标题:3.3 数据库配置

      本文链接:https://www.haomeiwen.com/subject/ozgbjqtx.html