1. 程式人生 > >【SpringBoot、Gradle與Activti整合及入門HelloWord】

【SpringBoot、Gradle與Activti整合及入門HelloWord】

最近公司有一個工作流的需求,本來打算全部由業務實現工作流的全過程,後來為了簡化開發,選擇考慮使用工作流框架。後來考慮使用Activti和flowable,但是由於flowable網上的教程較少,最後選擇使用Activti。有興趣的同學可以去研究研究flowable。

使用技術:SpringBoot+Activti
專案管理:Gradle

編譯器:Eclipse(個人感覺Activti的流程圖還是Eclipse的畫圖工具好用一點,Idea的實在用不太來)

選取Jar版本:為了SpringBoot和Activti更好相容,我選取的是常用的 Activti的 5.22.0版本

引入Jar包(SpringBoot的拆箱即用,所以引入核心Jar也就不用引入其餘的Jar了)

引入Jar包以後會有一個坑,再啟動Application的時候,會丟擲一個找不到一個依賴Bean的異常,這時候需要我們註解配置一下。需要注意的是,在你使用

@EnableAutoConfiguration 解除依賴的時候,在@SpringBootApplication中的同等配置是無效的,因為,後者是一個複合註解,包括前者,這是需要注意的一點。

在解除依賴關聯的前提下,專案啟動自然是沒什麼問題了。

 

接下來就是流程圖的繪畫和部署,我在寫HelloWord的時候是使用專案啟動掃描自動部署,沒用使用手動部署的方法。手動部署程式碼我會在下文附上來。

自動部署,在專案resource目錄下,建立一個 processes的二級目錄

建立好我二級目錄以後,在使用Eclipse的繪圖工具繪圖(前提是要裝繪圖外掛,跟裝SVN類似的外掛類似,搜尋下載安裝也就可以了)

當然一般繪圖的時候是 .bpmn檔案,有時候我們也需要在前端展現流程圖,所以需要在儲存.bpmn檔案的同時,儲存一個.png的檔案,方便我們呼叫展示,需要在Eclipse配置一下。

打上對勾即可,這樣在你編輯完 .bpmn檔案的時候,Ctrl+S 也會同時儲存出 png檔案在同級目錄。

下來就是資料來源的配置,也就是資料庫的掃描,因為Activti底層集合了Hibernate,會自動建立 25張資源表,也就是Activti的所需表,但是需要注意的是,雖然Activti底層建立等用的是Hibernate框架,但是他的Api的相關實現,使用的是Mybatis這個持久層框架。

我使用的還是自動掃描配置的方法,同樣在 processes的目錄下,建立名稱為   activiti.cfg.xml 的一個配置檔案,需要注意的是,名稱必須是這個,不能自己隨意定義。然後在配置檔案中配置自己的資料庫源。

這樣在專案啟動的時候,就會自動掃描,並建立表。

這樣,配置基本也就是完成了,其實也很簡單,當然了,還是要感謝Boot,幫我們解決了繁瑣的配置。

核心Api及程式碼,在下篇文章附上。