說實話,接觸Activiti已經是3年前的事情,那時候組里想做一個流程自動化的application,並且記錄用戶點擊、做單量等。第一次聽說Activiti,感覺挺好奇的,遂看了下相關的文檔跟同事的代碼,一個字 - 蒙...,文檔組織太差且一堆特殊的約定,記得那個.form文件就把自己整的暈暈的..., 之后部門解散,也就擱置了對Activiti的深入研究,但是一直想弄明白它是怎么實現的,畢竟有很多地方在用Activiti做流程上的自動化。
一個月前,部門准備接個項目,把我拉上做下評估。項目背景是做windows系統的升級,涉及到工作流。為了通用性,准備做個工作流引擎作為各個流程的驅動組件。當時我的腦袋里立馬冒出Activiti,終於有機會再嘗試下這個開源工作流了!但是可悲的是,由於種種原因,部門局限於C#做開發,無奈只能先學習Activiti了...
資料:
1. 一如既往的還是官網,https://www.activiti.org/userguide/,不過目前的文檔版本是6.0.0的,大概看了下,提供的demo已經不同於5.x的版本了,不太喜歡6.0.0之后的demo,遂回歸到5.22.0版本(中文文檔也多些~)。
2. Activiti in Action,對照的網絡版,看到第六章后,發現了3。
3. Activiti實戰,中文版的,加上2中前六章的基礎,實踐起來也順手些。
其實,在Activiti的使用過程中,一直困擾我的一個問題就是,能不能不用Activiti特有的那些form文件,formkey,前端展示只是涉及常用的那些技術(html,css,js)?這樣的話,就只需要后端掌握Activiti。
最后還是在3中找到了實例 -> 通過數據庫表的巧妙設計,在業務數據和流程數據之間建立聯系。
--------未完待續--------