springboot结合flowable时,启动程序就会自动部署流程。
processes目录下的任何BPMN 2.0流程定义都会被自动部署。cases目录下的任何CMMN 1.1事例都会被自动部署。forms目录下的任何Form定义都会被自动部署。
我测试了一下,得到如下结论
关于如何打印flowable日志,查看我的这篇文章:学习记录544@springboot配置日志来打印flowable执行的sql语句
- 自动部署会在act_ge_bytearray、act_re_deployment、act_re_procdef表中插入一条数据,act_ge_property插入多条数据。当然我的流程xml中只有一个流程的定义的情况下,是这样的。
如果one-task-process.bpmn20.xml文件内容没有改变,重启程序不会重新部署如果one-task-process.bpmn20.xml文件内容改变,重启程序会重新在act_ge_bytearray、act_re_deployment、act_re_procdef表中插入一条数据,但act_ge_property数据不变。可以简单的理解为有一次新的部署,新的流程定义,但是这个流程定义的版本号是2,也就是说版本升级了,这很好理解。
那如果我此时根据key_开启一个实例,自然就是根据最新版本号的流程定义开启的实例了。
其实这个在源码中有介绍



