由於單位要做工作流所以研究了幾個工作流引擎,其中包括Activiti/camunda/Flowable/Jbpmn
重點對比下Activiti/camunda/Flowable三個框架,因為這三個框架同宗同源,幾乎都是從Jbpm4之后衍生出來的。
我們項目中主要用了camunda
https://camunda.com/
https://www.activiti.org/
https://flowable.com/open-source/
每個引擎都有工作流的畫圖,啟動,用戶,和接口。上面幾個引擎基本都是java的。我們的想法是利用camunda跑基本的任務,
然后在這個任務上掛自己的屬性,比如說文檔,然后當用戶登錄,看我的任務的時候可以看到以前都填寫過什么文檔,
我現在需要填寫什么文檔。所以就出現了模型和任務,這是在后台定義的,模型采用的是單繼承的類,任務可以使用這些模型類。
本身任務也是一個模型,這樣一個任務就可以掛許多文檔了。
說到工作流本身,每個工作流都有自己的restapi,就是http協議的接口,可以啟動工作流,查看工作流。中間層和工作流交互就是用的
這些restapi。每一個工作流引擎都有一個網站,然后有實例程序都是java的包括前端和后端,然后有一個h2的本地數據庫。
三個引擎基本都是這樣。