2018/2/27 Activiti教程之创建流程篇(与Springboot整合版)一
因为电脑还在托运中,现在手上这台垃圾电脑实在是没法玩微服务,所以趁着这两天玩玩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整合版)一的更多相关文章
- 2018/3/4 Activiti教程之对于流程的基本操作以及从发起到完成还有相关注意事项(与Springboot整合版)三
写教程实在太累了,,,还浪费时间,Activiti教程就写到这好了,不过最近在玩区块链,到时候写几个区块链方面的教程. 这是一些流程的查询与删除api,删除这块,默认是级联删除(加个false参数,就 ...
- (转) SpringBoot非官方教程 | 第二十四篇: springboot整合docker
这篇文篇介绍,怎么为 springboot程序构建一个Docker镜像.docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 可以让开发者打包他们的 ...
- SpringBoot非官方教程 | 第二十四篇: springboot整合docker
转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot24-docker/ 本文出自方志朋的博客 这篇文 ...
- 2018/3/4 Activiti教程之流程部署篇(与Springboot整合版)二
首先我们来看下Activiti为我们自动生成的这四张用户相关的表 先看下USER表 我已经插入了一些数据,很明显,就是保存用户的信息的 看下GROUP 用户对应的分组信息 MEMBERSHIP 用户和 ...
- SpringBoot非官方教程 | 第十五篇:Springboot整合RabbitMQ
转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot15-rabbitmq/ 本文出自方志朋的博客 这 ...
- SpringBoot非官方教程 | 第二十六篇: sprinboot整合elk,搭建实时日志平台
转载请标明出处: 原文首发于https://www.fangzhipeng.com/springboot/2017/07/11/sprinboot25-elk/ 本文出自方志朋的博客 这篇文章主要介绍 ...
- SpringBoot非官方教程 | 第六篇:springboot整合mybatis
转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot-mybatis/ 本文出自方志朋的博客 本文主要 ...
- SpringBoot非官方教程 | 第四篇:SpringBoot 整合JPA
转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot4-jpaJ/ 本文出自方志朋的博客 JPA全称J ...
- (转)SpringBoot非官方教程 | 第十二篇:springboot集成apidoc
首先声明下,apidoc是基于注释来生成文档的,它不基于任何框架,而且支持大多数编程语言,为了springboot系列的完整性,所以标了个题. 一.apidoc简介 apidoc通过在你代码的注释来生 ...
随机推荐
- 转】MongoDB主从复制实验 master/slave
原博文出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/page/4/ 感谢! Posted: May 31, 2013 Ta ...
- Java开发笔记(九十三)深入理解字节缓存
前面介绍了文件通道的读写操作,其中用到字节缓存ByteBuffer,它是位于通道内部的存储空间,也是通道唯一可用的存储形式.ByteBuffer有两种构建方式,一种是调用静态方法wrap,根据输入的字 ...
- [ BZOJ 2038 ] Hose
\(\\\) Description 给出一个数列,多次询问,每次给出一个区间 \([l_i,r_i]\) ,问在区间中随意选两个位置不同的数,是同一个数的概率有多大. \(n,m\le 5\time ...
- Android 图片文件和Bitmap之间的转换
String filePath="c:/01.jpg"; Bitmap bitmap=BitmapFactory.decodeFile(filePath); 如果图片过大,可能导致 ...
- Java:核心概念j积累(一)
1. 抽象 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象包括两个方面,一是过 ...
- ajax跨域上传图片
前台页面 var data = new FormData(); data.append('file', file); data.append('app', 'goods'); $.ajax({ url ...
- Net作业调度
Net作业调度(一) -Quartz.Net入门 2014-11-01 13:14 by 蘑菇先生, 13954 阅读, 7 评论, 收藏, 编辑 背景 很多时候,项目需要在不同时刻,执行一个或很多个 ...
- WPF小记 -- 使用Path自己画图标,点击命中(焦点)丢失问题
在Template中,Path外面的Grid需添加Background属性值.否则点击范围会受限制,例如:Click,在RadioButton的Height和With范围内点击,命中率<1. & ...
- C++运行外部exe并判断exe返回值
有三个API函数可以运行可执行文件WinExec.ShellExecute和CreateProcess.CreateProcess因为使用复杂,比较少用. WinExec主要运行EXE文件. ⑴ 函数 ...
- 笔试算法题(17):奇偶数分置数组前后段 & 反序访问链表
出题:输入一个数组,要求通过交换操作将奇数索引的元素调整到数组前半部分,偶数索引的元素调整到数组后半部分: 分析: 当然如果没有额外要求的话很容易实现,最好使用In-Place的实现策略:考虑插入排序 ...