美文网首页
Activiti流程引擎配置2-数据库配置

Activiti流程引擎配置2-数据库配置

作者: 安安汐而 | 来源:发表于2019-08-19 10:39 被阅读0次

Demo项目代码:
https://gitee.com/AnAnXiEr/activiti6-demo

1、缺省配置默认,使用H2内存数据库
2、配置JDBC属性,使用mybatis提供的连接池
3、配置DataSource,可自选第三方实现

数据库连接sql,在activiti-engin:6.0.0 库包下
image.png

JDBC 连接

image.png

第三方DataSource

Druid 阿里的为监控而生的数据库连接池
Dbcp 老牌稳定,tomcat自带
HikariCP spring默认,速度快

数据库databaseType:

image.png

配置databaseSchemaUpdate

false: 启动时检查数据库版本,发生不匹配抛出异常(不自动修改数据库,只是抛异常)--线上
true: 启动时自动检查并更新数据库表,不存在会创建 (一般 dev开发项目 使用)
create-drop:启动时创建数据库结构,结束时删除表(一般测试时使用)

例子:

JDBC连接

//JAVA JDBC连接
ProcessEngineConfiguration configuration =
        ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault();
<!-- activiti.cfg.xml -->
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--基于内存的独立的流程引擎配置-->
    <bean id="processEngineConfiguration"
          class="org.activiti.engine.impl.cfg.StandaloneInMemProcessEngineConfiguration">
        <!--<property name="jdbcUrl" value="jdbc:h2:mem:activiti;DB_CLOSE_DELAY=1000;MVCC=TRUE" />-->
        <!--<property name="jdbcDriver" value="org.h2.Driver" />-->
        <!--<property name="jdbcUsername" value="sa" />-->
        <!--<property name="jdbcPassword" value="" />-->

        <!--mysql连接-->
        <property name="jdbcUrl"
                  value="jdbc:mysql://10.10.1.17:3306/activiti6?useUnicode=true&amp;characterEncoding=utf8&amp;nullCatalogMeansCurrent=true&amp;zeroDateTimeBehavior=convertToNull&amp;useSSL=true&amp;serverTimezone=GMT%2B8"/>
        <property name="jdbcDriver" value="com.mysql.cj.jdbc.Driver"/>
        <property name="jdbcUsername" value="root001"/>
        <property name="jdbcPassword" value="Mysql_2019"/>
        <!--启动时自动检查并更新数据库表,不存在会创建 (一般 dev开发项目 使用)-->
        <property name="databaseSchemaUpdate" value="true"/>
    </bean>

</beans>

druid连接数据库

//JAVA druid连接数据库
ProcessEngineConfiguration configuration =   ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti_druid.cfg.xml");
<!-- activiti_druid.cfg.xml -->
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--基于内存的独立的流程引擎配置-->
    <bean id="processEngineConfiguration"
          class="org.activiti.engine.impl.cfg.StandaloneInMemProcessEngineConfiguration">
        <!--<property name="jdbcUrl" value="jdbc:h2:mem:activiti;DB_CLOSE_DELAY=1000;MVCC=TRUE" />-->
        <!--<property name="jdbcDriver" value="org.h2.Driver" />-->
        <!--<property name="jdbcUsername" value="sa" />-->
        <!--<property name="jdbcPassword" value="" />-->

        <!--mysql连接-->
        <!--<property name="jdbcUrl"-->
        <!--value="jdbc:mysql://10.10.1.17:3306/activiti6?useUnicode=true&amp;characterEncoding=utf8&amp;nullCatalogMeansCurrent=true&amp;zeroDateTimeBehavior=convertToNull&amp;useSSL=true&amp;serverTimezone=GMT%2B8"/>-->
        <!--<property name="jdbcDriver" value="com.mysql.cj.jdbc.Driver"/>-->
        <!--<property name="jdbcUsername" value="root001"/>-->
        <!--<property name="jdbcPassword" value="Mysql_2019"/>-->
        <!--启动时自动检查并更新数据库表,不存在会创建 (一般 dev开发项目 使用)-->
        <property name="databaseSchemaUpdate" value="true"/>

        <!--以druid数据源连接-->
        <property name="dataSource" ref="dataSource"/>

        <!--是否使用历史数据 默认 true-->
        <property name="dbHistoryUsed" value="true"></property>

        <!--是否使用身份数据 默认 true 如果需要跟自身应用的用户集成,可设置成flase-->
        <property name="dbIdentityUsed" value="true"></property> 

        <!--表的自动前缀-->
        <!--<property name="databaseTablePrefix"  value="t_"/>-->

        <!--数据库类型、可以不用配置,代码会根据连接自动识别-->
        <!--<property name="databaseType" value="mysql"/>-->
    </bean>

    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
        <property name="url"
                  value="jdbc:mysql://10.10.1.17:3306/activiti6?useUnicode=true&amp;characterEncoding=utf8&amp;nullCatalogMeansCurrent=true&amp;zeroDateTimeBehavior=convertToNull&amp;useSSL=true&amp;serverTimezone=GMT%2B8"/>
        <property name="driverClassName" value="com.mysql.cj.jdbc.Driver"/>
        <property name="username" value="root001"/>
        <property name="password" value="Mysql_2019"/>
        <property name="initialSize" value="1"/>
        <property name="maxActive" value="10"/>

        <property name="filters" value="stat,slf4j"/>
    </bean>

</beans>

相关文章

网友评论

      本文标题:Activiti流程引擎配置2-数据库配置

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