因为电脑还在托运中,现在手上这台垃圾电脑实在是没法玩微服务,所以趁着这两天玩玩Activiti吧。

  说实话,在学习Activiti中走了N多弯路,最大的原因就是网上没有一个完整(好)的教程,甚至连官方的文档坑也是巨多,比如默认是h2数据库,其它数据库需要手动指定之类就没写明。所以我决定站出来,写出一篇能让很多人在学习Activiti时少走点弯路的笔记。

  首先,因为我使用的工具是STS(Eclipse安装一些Spring提供的插件),所以我们需要安装一个activiti-desgner插件,这是为了后面画流程图用的,具体安装方法百度即可,我这里提供一个安装包,因为官网下载巨慢无比,还超级卡,最重要的是容易失败,所以推荐使用此安装包进行离线安装。

链接:https://pan.baidu.com/s/1i6Pwbwp 密码:xksi

因为springboot比较好用,所以我们创建一个springboot项目

这是pom文件,引入activiti基本包以及mysql驱动包

其实如果使用的是STS的话,直接右键创建springboot项目,然后在创建界面可以直接选包,十分方便。

这是yml文件

配置写完后可以直接右键启动,不过注意,先在mysql中创建一个对应的数据库

通过观察日志我们发现,它读取并执行了三个sql文件

这三个sql文件分别是

engine:引擎

history:历史

identity:认证

而在数据库中则生成了下面这25张表

使用插件创建一个bpmn流程图文件吧

创建成功后,我们点一下startEvent这个按钮然后再按一下空白处,并且打开Properties控制台,并将id和name改为与我们bpmn文件名相同(这是规范)

保存一下,然后使用xml格式打开,这个操作没法截图,就是右击,然后open with,就能看到了

看到这差不多清楚了吧,其实流程图插件所做的就是将xml配置图形化了,方便我们开发。我们关注process标签里的元素即可,下面的是它在流程图里的大小和坐标位置。

我们来创建一个完成的审批任务链吧

此时再以xml格式打开

此时可以看到,除了本身任务节点被记录外,还有一个类似链表形式的序列节点,让每个任务按照我们图表中定义的那样产生了关联.

现在有点晚了,明天再继续写下去吧,不得不说spring boot简直太强大了,很多配置我们完全不用去做,直接拿着用(自动注入)就行了。明天的笔记里应该会有体现;

2018/2/27 Activiti教程之创建流程篇(与Springboot整合版)一的更多相关文章

  1. 2018/3/4 Activiti教程之对于流程的基本操作以及从发起到完成还有相关注意事项(与Springboot整合版)三

    写教程实在太累了,,,还浪费时间,Activiti教程就写到这好了,不过最近在玩区块链,到时候写几个区块链方面的教程. 这是一些流程的查询与删除api,删除这块,默认是级联删除(加个false参数,就 ...

  2. (转) SpringBoot非官方教程 | 第二十四篇: springboot整合docker

    这篇文篇介绍,怎么为 springboot程序构建一个Docker镜像.docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 可以让开发者打包他们的 ...

  3. SpringBoot非官方教程 | 第二十四篇: springboot整合docker

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot24-docker/ 本文出自方志朋的博客 这篇文 ...

  4. 2018/3/4 Activiti教程之流程部署篇(与Springboot整合版)二

    首先我们来看下Activiti为我们自动生成的这四张用户相关的表 先看下USER表 我已经插入了一些数据,很明显,就是保存用户的信息的 看下GROUP 用户对应的分组信息 MEMBERSHIP 用户和 ...

  5. SpringBoot非官方教程 | 第十五篇:Springboot整合RabbitMQ

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot15-rabbitmq/ 本文出自方志朋的博客 这 ...

  6. SpringBoot非官方教程 | 第二十六篇: sprinboot整合elk,搭建实时日志平台

    转载请标明出处: 原文首发于https://www.fangzhipeng.com/springboot/2017/07/11/sprinboot25-elk/ 本文出自方志朋的博客 这篇文章主要介绍 ...

  7. SpringBoot非官方教程 | 第六篇:springboot整合mybatis

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot-mybatis/ 本文出自方志朋的博客 本文主要 ...

  8. SpringBoot非官方教程 | 第四篇:SpringBoot 整合JPA

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot4-jpaJ/ 本文出自方志朋的博客 JPA全称J ...

  9. (转)SpringBoot非官方教程 | 第十二篇:springboot集成apidoc

    首先声明下,apidoc是基于注释来生成文档的,它不基于任何框架,而且支持大多数编程语言,为了springboot系列的完整性,所以标了个题. 一.apidoc简介 apidoc通过在你代码的注释来生 ...

随机推荐

  1. AJPFX分析Android退出应用最优雅的方式

    什么是RS式呢?即Receiver+singleTask .我们知道Activity有四种加载模式,而singleTask就是其中的一种,使用这个模式之后,当startActivity时,它先会在当前 ...

  2. hihocoder offer收割编程练习赛12 A 歌德巴赫猜想

    思路: 枚举. 实现: #include <iostream> #include <cstdio> #include <algorithm> using names ...

  3. iOS Programming View and View Hierarchy 视图和视图等级

    iOS Programming  View and View Hierarchy 视图和视图等级 1.1(1)File → New → Project.. From the iOS section, ...

  4. SQL Server性能调优——报表数据库与业务数据库分离

    前段时间把公司的主数据库切了,分成业务库和报表库,业务库向报表库进行实时的Replication.这个项目的上线提升了系统的性能和可维护性,现在把设计时的考量和所做的工作重新回顾一下,作为备忘. 项目 ...

  5. cookie设置和读取以及获取超链接参数

    function setCookie(c_name, value, expiredays) { var exdate = new Date() exdate.setDate(exdate.getDat ...

  6. OJB

    OJB 编辑 本词条缺少名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! 对象关系桥(OJB)是一种对象关系映射工具,它能够完成从Java对象到关系数据库的透明存储.   英文名 OJB ...

  7. codeforces_C. Maximum Subrectangle

    http://codeforces.com/contest/1060/problem/C 题意: a.b数组长度分别为n.m.矩阵C,Cij=ai*bj.在C中找到一个子矩阵,该子矩阵所有元素和不大于 ...

  8. 【转】UpdateData()函数

    一.总结UpdateData()函数 UpdateData(true);//用于将屏幕上控件中的数据交换到变量中. UpdateData(false);//用于将数据在屏幕中对应控件中显示出来. 当你 ...

  9. 负对数似然(negative log-likelihood)

    negative log likelihood文章目录negative log likelihood似然函数(likelihood function)OverviewDefinition离散型概率分布 ...

  10. React入门介绍(2)- React Component-React组件

    React Component-React组件 允许用户自由封装组件是React非常突出的特性,用户可将自己创建的组件像普通的HTML标签一样插入页面,React.CreateClass方法就是用来创 ...