• 数据库配置


    数据库配置


    1. 第一种方式:是定义数据库的JDBC属性:
    2. 第二种方式:使用DataSource
    3. 支持的数据库

    有两种方式来配置Activiti引擎将使用的数据库。

    第一种方式:是定义数据库的JDBC属性:

    • jdbcUrl:数据库的JDBC URL

    • jdbcDriver:数据库的驱动类

    • jdbcUsername:用户名

    • jdbcPassword:密码

    基于提供的JDBC属性构建的数据源将具有默认的MyBatis连接池设置。可以选择设置以下属性来调整连接池(取自MyBatis文档):

    • jdbcMaxActiveConnections:连接池在任何时间最多可以包含的活动连接数。缺省值是10。

    • jdbcMaxIdleConnections:连接池在任何时间最多可以包含的空闲连接数。

    • jdbcMaxCheckoutTime:连接被取出使用的最长时间,超过时间会被强制回收默认值是20000(20秒)。

    • jdbcMaxWaitTime::这是一个底层配置,让连接池可以在长时间无法获得连接时,打印一条日志,并重新尝试获取一个连接。Default是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="" />

    第二种方式:使用DataSource

    我们的基准测试表明,在处理大量并发请求时,MyBatis连接池不是最有效或最有弹性的。因此,建议向我们提供一个javax.sql.DataSource实现并将其注入到流程引擎配置中(例如DBCP,C3P0,Hikari,Tomcat连接池等):

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

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

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

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

      • false (默认值):在创建流程引擎时DB schema的版本,并在版本不匹配时引发异常。

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

      • create-drop:在创建流程引擎时DB schema,并在流程引擎关闭时DB schema。

    支持的数据库:

    数据库类型JDBC URLNotes

    h2

    jdbc:h2:tcp://localhost/activiti

    Default configured database

    mysql

    jdbc:mysql://localhost:3306/activiti?autoReconnect=true

    Tested using mysql-connector-java database driver

    oracle

    jdbc:oracle:thin:@localhost:1521:xe

     

    postgres

    jdbc:postgresql://localhost:5432/activiti

     

    db2

    jdbc:db2://localhost:50000/activiti

     

    mssql

    jdbc:sqlserver://localhost:1433;databaseName=activiti (jdbc.driver=com.microsoft.sqlserver.jdbc.SQLServerDriver) OR jdbc:jtds:sqlserver://localhost:1433/activiti (jdbc.driver=net.sourceforge.jtds.jdbc.Driver)

    Tested using Microsoft JDBC Driver 4.0 (sqljdbc4.jar) and JTDS Driver

  • 相关阅读:
    Property [*****] not found on type [com.erp.pojo.ErpSupplier]
    python 杀死线程的两种方式
    docker的学习之认识docker(一)
    Ubuntu下 MySQL不支持中文解决办法
    Django项目创建
    git介绍
    python 实现链表的逆置
    python 实现链表的增删改查(双向链表)
    python----super
    python面向对象
  • 原文地址:https://www.cnblogs.com/jimboi/p/8469026.html
Copyright © 2020-2023  润新知