工作流小白学习

本文介绍了工作流的概念,重点讲解了Activiti框架的使用,包括初始化表结构、理解相关表的意义、基本使用方法,如部署流程定义、查询流程实例、任务操作。还探讨了Activiti的API、任务类型和个人任务与公共任务的区别。最后讨论了排他网关和并行网关的应用。
摘要由CSDN通过智能技术生成

工作流学习

一、了解工作流

工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现”。
工作流管理系统(Workflow Management System, WfMS)是一个软件系统,它完成工作量的定义和管理,并按照在系统中预先定义好的工作流逻辑进行工作流实例的执行。工作流管理系统不是企业的业务系统,而是为企业的业务系统的运行提供了一个软件的支撑环境。

常见的工作流框架
Activity5.13、JBPM4.4、OSWorkFlow、WorkFlow
工作流框架底层需要有数据库提供支持,activiti5.13版本,有23张表。JBPM4.4框架底层有数据库支持,18张表。JBPM底层使用hibernate操作数据库。Activiti框架底层使用的mybatis操作数据库。


二、初始化表结构

建表之前,说一下activiti的工作全部依赖ProcessEngine工作引擎,而初始化表就是建立ProcessEngine实例的三种方式:

  1. ProcessEngineConfiguration.createStandaloneProcessEngineConfiguration() +建表配置+.buildProcessEngine();
  2. ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml").buildProcessEngine()
  3. ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault().buildProcessEngine()

2.1 初始化表操作

 2.1.1 使用activiti框架提供的建表语句

        在activiti框架包下面的 /activiti-x.xx/database/ceate/ 中

2.1.2 使用activiti框架自动建表

public void createActivitiTableByConfigration() {
		 //    创建一个流程引擎配置对象
		ProcessEngineConfiguration configuration = ProcessEngineConfiguration.createStandaloneProcessEngineConfiguration();
		
		//  设置数据源信息
		configuration.setJdbcDriver("com.mysql.jdbc.Driver");//mysql数据库驱动
		configuration.setJdbcUrl("jdbc:mysql://localhost:3306/activiti");//指定数据库
		configuration.setJdbcUsername("root");//用户名
		configuration.setJdbcPassword("");//密码
		
		 //    设置自动建表
		configuration.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
		
		//	    创建一个流程引擎对象,在创建流程引擎对象中会自动建表
		ProcessEngine processEngine = configuration.buildProcessEngine();
		
		System.out.println(processEngine);
	}

2.1.3 使用xml配置文件初始化

public void createActivitiTableByXml() {
//		ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
		//	    创建一个流程引擎对象,在创建流程引擎对象中会自动建表
//		ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
		
		ProcessEngine processEngine = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml").buildProcessEngine();
		System.out.println(processEngine);
	}

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" xmlns:p="http://www.springframework.org/schema/p"
	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">
       		<!-- 数据连接配置 -->
        	<property name="jdbcDriver" value="com.mysql.jdbc.Driver"></property>
        	<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/activiti"></property>
        	<property name="jdbcUsername" value="root"><
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值