相关文章

更多

最近更新

更多

初始化activiti数据库

2019-03-22 22:48|来源: 网路

首先要把activiti相关的环境加进来

如果是不是maven项目,下载activiti的压缩包activiti-5.19.0.zip
https://github.com/Activiti/Activiti/releases/download/activiti-5.19.0/activiti-5.19.0.zip
解压activiti-5.19.0.zip\activiti-5.19.0\wars\activiti-rest.war
把activiti-rest\WEB-INF\lib下所有的jar包添加到classpath中,还有mysql的驱动包

maven方式:
<dependency>
    <groupId>org.activiti</groupId>
    <artifactId>activiti-engine</artifactId>
    <version>5.19.0</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.26</version>
</dependency>
<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.10</version>
    <scope>test</scope>
</dependency>


创建activiti数据库activiti,并使用ProcessEngineConfiguration.setDatabaseSchemaUpdate来创建表
setDatabaseSchemaUpdate的参数有以下几种:

DB_SCHEMA_UPDATE_FALSE = "false";不能自动创建表,需要表存在
DB_SCHEMA_UPDATE_CREATE_DROP = "create-drop";先删除表再创建表
DB_SCHEMA_UPDATE_TRUE = "true";如果表不存在,自动创建表


ProcessEngineConfiguration的jdbc默认是h2
protected String jdbcDriver = "org.h2.Driver";
protected String jdbcUrl = "jdbc:h2:tcp://localhost/activiti";
protected String jdbcUsername = "sa";
protected String jdbcPassword = "";


示例:

/** 初始化activiti工作流的23张表 */
@Test
public void createTable() {
    ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration
            .createStandaloneProcessEngineConfiguration();
    // 连接数据库的配置
    processEngineConfiguration.setJdbcDriver("com.mysql.jdbc.Driver");
    processEngineConfiguration
            .setJdbcUrl("jdbc:mysql://localhost:3306/activiti?useUnicode=true&characterEncoding=utf8");
    processEngineConfiguration.setJdbcUsername("root");
    processEngineConfiguration.setJdbcPassword("123456");
 
    /**
     * DB_SCHEMA_UPDATE_FALSE = "false";不能自动创建表,需要表存在
     * DB_SCHEMA_UPDATE_CREATE_DROP = "create-drop";先删除表再创建表
     * DB_SCHEMA_UPDATE_TRUE = "true";如果表不存在,自动创建表
     */
    processEngineConfiguration.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
    // 工作流的核心对象,ProcessEnginee对象
    ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
    System.out.println("processEngine:" + processEngine);
}


本文参考网络


相关问答

更多

linux postgresql怎么重新初始化数据库

1、创建用户postgres,密码同样是postgres: net user postgres postgres /add 2、在数据库根目录下建立data目录:C:\Program Files\PostgreSQL\9.3>md data 3、去掉administrator对data目录的权限:C:\Program Files\PostgreSQL\9.3>cacls data /e /t /r administrator 处理的目录: C:\Program Files\PostgreSQL\9 ...

MySQL5.7数据库怎么初始化

1、双击进入安装 2、在协议许可(License Agreement)界面,勾选“I accept the license terms”,点击“Next”。 3、在检查更新信息(Find latest products)界面,勾选“Skip the check for updates(no re中国mended)”跳过检查,然后点击“Next”。 4、在选择安装类型(Choosing a Setup Type)界面,根据安装需求选择安装类型(推荐默认开发版本),设置MySQL安装路径和数据存放路径 ...

mysql 5.6 数据库怎么初始化

1、停止mysql服务 2、删除mysql的data目录下的,除mysql这个目录外的其他目录(为保险期间,先移走) 3、重启myql即可 -----------------------------------

如何初始化MySQL数据库在Ubuntu安装后

当在Ubuntu中执行命令sudo apt-get install mysql-server5.1安装的时候居然没有提示我输入mysql的密码之类的信息,但是当安装好之后再终端中直接输入mysql的时候又能直接进入mysql中,虽然可以进入mysql中但是我对mysql的密码一点都不知道,所以这个时候安装的mysql就相当于没有安装,因为不能用程序进行操作mysql数据库(因为操作数据库都需要mysql数据的密码的),为了解决ubuntu中mysql密码初始化的方法有一下两种: (1)打开/etc ...

spring boot怎么初始化连接数据库

新建Spring Boot项目,依赖选择JPA(spring-boot-starter-data-jpa)和Web(spring-bootstarter-web)。 配置基本属性 在application.properties里配置数据源和jpa的相关属性 spring.datasource.driverClassName=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/springboot sprin ...

springside新生成的项目如何初始化mysql数据库

你可以在SpringSide下面的example中的3个实例应用中获取到sql脚本。。。文件名是load-data.sql;它的脚本是采用标准的sql脚本编写的,用在mysql数据库中没问题,可以通过复制粘贴到MySQL客户端运行,但是你要确保你的数据库的字符编码已经设置好,以免出现中文乱码。。。

如何初始化空提示数据库(How to initialize empty hint database)

是的,有一个命令Create HintDb完全符合您的要求。 Create HintDb foo_db. Goal True. auto with foo_db nocore. (* no hints *) exact I. Qed. 出于演示目的(为了避免解决目标),我还添加了伪db nocore以避免使用标准库的提示。 你可能想auto with foo_db做auto with foo_db ,来解决所有可以解决的目标。 Yes, there's a command Create ...

SQLite和数据库初始化(SQLite and database initialization)

使用SQLite数据库相对简单,您无需担心太多。 通常关于简单应用程序的SQLite: 有一个单独的类负责管理数据库。 这个类扩展了SqliteOpenHelper,这意味着你将需要重写一些负责创建表的默认方法。 但是这个方法被系统调用,而不是你,所以不需要担心它们。 您只需配置一次,以便系统知道您的表中需要什么样的列,以及这些。 您需要将您自己的方法添加到将从现有数据库添加/删除/更新/检索数据的相同类中。 这些是您将要使用的主要方法。 根据上面告诉你可以看到,你不需要检查数据库是否存在。 系统 ...

从数据库初始化一维数组(initialize one dimentional array from database)

Dim xValues()As String = reader(“category”) 这不是初始化Array的过程。 我可以假设您将xValues()作为动态数组。 因此,要使用数据进行初始化,您可以执行以下操作 Dim xValues() As String While reader.Read() ReDim Preserve xValues(xValues.GetUpperBound(0) + 1) ...

Azure数据库初始化(Azure database initialization)

将初始化程序添加到global.asax文件中的Application_Start方法。 这应该够了吧。 Add the initialiser to the Application_Start method in your global.asax file. That should do the trick.