三分鐘瞭解Activity工做流

三分鐘明白 Activity工做流 -- java運用

https://blog.csdn.net/zbdxcyg/article/details/78519773java

  1、 什麼是工做流web

  以請假爲例,如今大多數公司的請假流程是這樣的數據庫

  員工打電話(或網聊)向上級提出請假申請——上級口頭贊成——上級將請假記錄下來——月底將請假記錄上交公司——公司將請假錄入電腦markdown

  採用工做流技術的公司的請假流程是這樣的框架

  員工使用帳戶登陸系統——點擊請假——上級登陸系統點擊容許異步

  就這樣,一個請假流程就結束了ide

  有人會問,那上級不用向公司提交請假記錄?公司不用將記錄錄入電腦?答案是,用的。可是這一切的工做都會在上級點擊容許後自動運行!工具

  這就是工做流技術。post

  Georgakopoulos給出的工做流定義是:工做流是將一組任務組織起來以完成某個經營過程:定義了任務的觸發順序和觸發條件,每一個任務能夠由一個或多個軟件系統完成,也能夠由一個或一組人完成,還能夠由一個或多我的與軟件系統協做完 
  這裏寫圖片描述 
   
  2、 工做流技術的優勢 
   
  從上面的例子,很容易看出學習

  工做流系統,實現了工做流程的自動化,提升了企業運營效率、改善企業資源利用、提升企業運做的靈活性和適應性、提升量化考覈業務處理的效率、減小浪費(時間就是金錢)。

  而手工處理工做流程,一方面沒法對整個流程情況進行有效跟蹤、瞭解,另外一方面不免會出現人爲的失誤和時間上的延時致使效率低下,特別是沒法進行量化統計,不利於查詢、報表及績效評估。

  3、 Java開發者會爲何要學Activity工做流 
   
  在Java領域,JBPM和Activity是兩個主流的工做流系統,而Activity的出現無疑將會取代JBPM(Activity的開發者就是從Jbpm開發者出來的)。

  4、 Activity工做流學習要點

  一、1個插件

  在Eclipse中安裝Activity插件,讓你能夠在Eclipse中繪製Activity工做流圖

  二、1個引擎

  ProcessEngine對象,Activity工做流引擎。這是Activiti工做的核心。負責生成流程運行時的各類實例及數據、監控和管理流程的運行。

  全部的操做都是從獲取引擎開始的,因此通常會把引擎做爲全局變量

ProcessEngine processEngine =ProcessEngines.getDefaultProcessEngine();
  • 1

  三、1個配置文件

  activiti.cfg.xml。Activiti核心配置文件,配置流程引擎建立工具的基本參數和數據庫鏈接池參數

  四、5種數據庫表

  Activiti的後臺是有數據庫的支持,全部的表都以ACT_開頭。 第二部分是表示表的用途的兩個字母標識。用途也和服務的API對應。

  ACT_RE_*: ‘RE’表示repository。 這個前綴的表包含了流程定義和流程靜態資源(圖片,規則,等等)。

  ACT_RU_*: ‘RU’表示runtime。 這些運行時的表,包含流程實例,任務,變量,異步任務,等運行中的數據。 Activiti只在流程實例執行過程當中保存這些數據,在流程結束時就會刪除這些記錄。 這樣運行時表能夠一直很小速度很快。

  ACT_ID_*: ‘ID’表示identity。 這些表包含身份信息,好比用戶,組等等。

  ACT_HI_*: ‘HI’表示history。 這些表包含歷史數據,好比歷史流程實例,變量,任務等等。

  ACT_GE_*: 通用數據,用於不一樣場景下,如存放資源文件。 
  
  五、23張表

  不一樣的表存放不一樣方面的數據,有流程定義表、任務結點表、流程變量表、任務歷史表等等。 
  這裏寫圖片描述 
   
  六、5項Service

  不一樣的Service類對應不一樣的功能。

  好比TaskService,是activiti的任務服務類。能夠從這個類中獲取任務的信息。

  而HistoryService,則是activiti的查詢歷史信息的類。在一個流程執行完成後,這個對象爲咱們提供查詢歷史信息。

  七、7項基本操做

    設計流程圖(各類組件,如連線、用戶任務、網關)

    流程定義增刪改查

    流程變量增刪改查

    啓動流程定義

    任務增刪改查

    完成任務

    歷史信息查詢

  學習7項基本操做時只需在JavaSE下執行便可,固然,作web項目的時候就要考慮和SSH等開發框架結合的問題。固然,只有基本操做學會了,綜合開發並不難。 
  



  這個世界上沒有知識是學不會的,不是嗎?若是一開始學不會,就能夠把問題細化分解,而後學習更基本的知識。最後,全部問題都能變得和1+1=2同樣簡單,咱們須要的只是時間。好了,最後給你們推薦一個學習Java的好網站 JAVA自學網站–how2j.cn
相關文章
相關標籤/搜索