第二章:activiti工作流连接数据库,和eclipse安装activiti插件

第二章:activiti工作流连接数据库,和eclipse安装activiti插件第二章:activiti工作流连接数据库,和eclipse安装activiti插件

大家好,又见面了,我是你们的朋友全栈君。

创建一个maven工程,需要用的jar的pom配置如下:

(每个依赖上面有依赖的复制地址)

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.xiaoyexinxixn</groupId>
  <artifactId>ActivityLesson</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>ActivityLesson</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
  <!-- https://mvnrepository.com/artifact/org.activiti/activiti-engine -->
  <!-- activity工作流引擎 -->
	<dependency>
	    <groupId>org.activiti</groupId>
	    <artifactId>activiti-engine</artifactId>
	    <version>5.17.0</version>
	</dependency>
	
	<!-- https://mvnrepository.com/artifact/org.activiti/activiti-spring -->
	<!-- activiti-spring 与spring结合的jar包-->
	<dependency>
	    <groupId>org.activiti</groupId>
	    <artifactId>activiti-spring</artifactId>
	    <version>5.17.0</version>
	</dependency>
	
	<!-- https://mvnrepository.com/artifact/org.activiti/activiti-bpmn-model -->
	<!-- bpmn模型包 -->
	<dependency>
	    <groupId>org.activiti</groupId>
	    <artifactId>activiti-bpmn-model</artifactId>
	    <version>5.17.0</version>
	</dependency>
	
	<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
	<!-- 链接数据库 -->
	<dependency>
	    <groupId>mysql</groupId>
	    <artifactId>mysql-connector-java</artifactId>
	    <version>5.1.17</version>
	</dependency>
	
	
  
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

下面我们写一个连接数据库的测试类,把activity需要的24张表建出来,首先建个数据库:

第二章:activiti工作流连接数据库,和eclipse安装activiti插件

代码:

package com.xiaoyexinxixn.ActivityLesson;

import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
import org.junit.Test;

public class ActivityConnectionDB {
	
	/*
	 * 生产数据库activity的25张表
	 */
	@Test
	public void CreateTabel(){
		//获取流程引擎配置
		ProcessEngineConfiguration pec=ProcessEngineConfiguration.createStandaloneProcessEngineConfiguration();
		//加载mysql驱动
		pec.setJdbcDriver("com.mysql.jdbc.Driver");
		//链接数据库
		pec.setJdbcUrl("jdbc:mysql://localhost:3306/db_activity");
		//设置连接mysql用户
		pec.setJdbcUsername("root");
		//设置链接mysql密码
		pec.setJdbcPassword("123456");
		//设置自动创建表和更新表
		pec.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
		
		//构建流程引擎,即获取流程引擎对象
		ProcessEngine pe=pec.buildProcessEngine();
		
	}

}

从代码中可以看出,activity引擎会自动建出24张表。

数据库中生产的24张表:

第二章:activiti工作流连接数据库,和eclipse安装activiti插件

每张表的功能就不做介绍了,读者可百度一下;

下面我们把链接数据库的方式改为配置文件格式,xml的内容可到activiti官网去拷,地址:

https://www.activiti.org/userguide/index.html#_configuration

我们再在如下图建一个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.StandaloneProcessEngineConfiguration">
 
    <!-- Database configurations -->
    <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/db_activity" />
    <property name="jdbcDriver" value="com.mysql.jdbc.Driver" />
    <property name="jdbcUsername" value="root" />
    <property name="jdbcPassword" value="123456" />
    <property name="databaseSchemaUpdate" value="true" />
   
  </bean>
 
</beans>

测试代码:

/*
	 * 通过配置文件获取流程引擎对象
	 */
	@Test
	public void createTableWithXML(){
		//引擎配置
		ProcessEngineConfiguration pec=ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
		//获取流程引擎对象
		pec.buildProcessEngine();
	}
	

这里我们先把前面建好的表给删掉,然后再运行上面的测试的代码;

下面我们要在eclipse上下载画activity工作流程图的插件

help–>Install help software

第二章:activiti工作流连接数据库,和eclipse安装activiti插件

点击add 按钮,在弹框中输入:

name: Activiti BPMN 2.0 designer

location:  http://activiti.org/designer/update/

第二章:activiti工作流连接数据库,和eclipse安装activiti插件

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106154.html原文链接:https://javaforall.net

(0)
上一篇 2022年4月23日 下午5:20
下一篇 2022年4月23日 下午5:20


相关推荐

  • HackBar 新手使用教程「建议收藏」

    HackBar 新手使用教程「建议收藏」HackBar新手使用教程

    2022年6月6日
    46
  • js页面刷新或关闭时弹框消失_js刷新页面如何保留页面内容

    js页面刷新或关闭时弹框消失_js刷新页面如何保留页面内容onbeforeunload事件属性  定义:在即将离开当前页面(刷新或关闭)时执行JavaScript,例如:<script>window.onbeforeunload=function(e){e.returnValue=(“确定离开当前页面吗?”);}</script>  用法:onbeforeunload事件在…

    2025年7月9日
    5
  • 海明校验码–确定校验位

    海明校验码–确定校验位计算机组成中的海明校验码 相信学过的都会有了解 那么对其中校验位的确定 我想似乎有些人不是很明白 今天我来详细的把如何确定校验位分享一下 nbsp nbsp 首先看下基本的概念 nbsp nbsp nbsp 2 r k r 1 nbsp 其中 r 为校验位 k 为信息位 nbsp 信息位是已知的 那么如何确定校验位呢 用一个例子来说明 nbsp 例如 二进制码 1011 nbsp 求它的海明编码步骤如下 1 首先确定信息位 也就是

    2026年3月18日
    2
  • 基于MATLAB图像处理的中值滤波、均值滤波以及高斯滤波的实现与对比

    基于MATLAB图像处理的中值滤波、均值滤波以及高斯滤波的实现与对比基于 MATLAB 图像处理的中值滤波 均值滤波以及高斯滤波的实现与对比 1 背景知识中值滤波法是一种非线性平滑技术 它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值 中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术 中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替 让周围的像素值接近的真实值 从而消除孤立的噪声点

    2026年3月19日
    1
  • 深入OpenJDK源码全面理解Java类加载器(下 — Java源码篇)

    深入OpenJDK源码全面理解Java类加载器(下 — Java源码篇)目录前言一 双亲委派 1 1 类加载器结构 1 2 双亲委派二 使用步骤 1 引入库 2 读入数据总结前言 在深入 openjdk 源码全面理解 Java 类加载器 上 JVM 源码篇 我们分析了 JVM 是如何启动 并且初始化 BootStrapCla 的 也提到了 sun misc Launcher 被加载后会创建 ExtClassLoad 和 AppClassLoad 这篇文章主要从 Java 源码层面总结一下双亲委派 TCCL 的应用等 然后在聊聊自定义类加载器的注意事项 一 双亲委派 1 1 类加载器

    2026年3月17日
    1
  • 一级域名与二级域名有啥区别

    一级域名与二级域名有啥区别

    2021年10月21日
    65

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号