1. 程式人生 > >【Activiti工作流】3.準備Activiti開發環境

【Activiti工作流】3.準備Activiti開發環境

一、準備環境
1.activiti軟體環境
1)JDK1.6或者更高版本

2)支援的資料庫有:h2, mysql, oracle, postgres, mysql, db2等。

3)支援activiti5執行的jar包

4)開發環境為Eclipse3.7或者以上版本,myeclipse為8.6版本

2.相關資源下載
1)JDK可以到sun的官網下載
http://www.oracle.com/technetwork/java/javase/downloads/index.html

2)資料庫,例如:mysql可以在官網上下載。
http://www.mysql.com

3)activiti也可以到Activiti官方網站下載得到。
http://activiti.org/download.html


4) Eclipse3.7或者MyEclipse8.6也可以到相應的網站上獲得下載。

二、安裝流程設計器(eclipse外掛)
1.安裝方式一
在有網路的情況下,安裝流程設計器步驟如下:
1)開啟Help -> Install New Software. 在如下面板中:


2)在如下Install介面板中,點選Add按鈕:

配置新裝外掛的地址和名稱

3)然後填入下列欄位
Name: Activiti BPMN 2.0 designer
Location: http://activiti.org/designer/update/


4)回到Install介面,在面板正中列表中把所有展示出來的專案都勾上:


5)點選複選框
在Detail部分記得選中 "Contact all updates sites.." , 因為它會檢查所有當前安裝所需要的外掛並可以被Eclipse下載.

6)安裝完以後,點選新建工程new->Other…打開面板,如果看到下圖內容:

說明安裝成功了。

在沒有網路的情況下,安裝流程設計器步驟如下:
1)下載外掛的jar包,下載地址:http://download.csdn.net/detail/u013517797/9763166
1)解壓此jar包
2)把壓縮包中的內容放入eclipse根目錄的dropins資料夾下


3)重啟eclipse,點選新建工程new->Other…打開面板,如果看到下圖內容:

說明安裝成功了。


三、對流程設計器的使用說明
開啟選單Windows->Preferences->Activiti->Save下流程流程圖片的生成方式:

雖然流程引擎在單獨部署bpmn檔案時會自動生成圖片,但在實際開發過程中,自動生成的圖片會導致和BPMN中的座標有出入,在實際專案中展示流程當前位置圖會有問題。
所在完成以上配置後,會由我們自己來管理流程圖片。在釋出流程時把流程規則檔案和流程圖片一起上傳就行了。


四、準備Activiti5開發環境
4.0.建立一個Activiti工程


點選Finish完成建立

建立成功的專案:

我們的專案目前是Maven結構,裡面有pom.xml資源配置。
業務類寫在src/main/java下,相應的資原始檔放置在src/main/resources下。
同理,測試的業務類在src/test/java下,相應的測試資原始檔放置在src/test/resources下。

我們新建一個lib資料夾,來放置一會我們即將要加的jar包。


4.1.新增Activiti5的jar包
需要新增以下jar包:


下載地址:http://download.csdn.net/detail/u013517797/9764657 (樣例工程的WEB-INF/lib資料夾下有所有jar)
我們需要匯入lib下所有包。新增到classpath中。


由於我們使用的是Mysql資料庫,Mysql資料庫的連結驅動Activiti官方包中並沒有提供,需要我們自己匯入。手動匯入mysql-connector-java.jar,新增到classpath下。

4.2初始化資料庫
我們在src/test/java下新建一個junit包,在該包下建立一個java類,名為TestActiviti:

內容:

package junit;

import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
import org.junit.Test;

public class TestActiviti {
    /**使用程式碼建立工作流需要的23張表*/
    @Test
    public void createTable(){
        //流程引擎ProcessEngine物件,所有操作都離不開引擎物件
        ProcessEngineConfiguration processEngineConfiguration =
                ProcessEngineConfiguration.createStandaloneInMemProcessEngineConfiguration();
        //連線資料庫的配置
        processEngineConfiguration.setJdbcDriver("com.mysql.jdbc.Driver");
        processEngineConfiguration.setJdbcUrl("jdbc:mysql://localhost:3306/zhucoder2017?useUnicode=true&characterEncoding=utf8");
        processEngineConfiguration.setJdbcUsername("root");
        processEngineConfiguration.setJdbcPassword("1234");
    
        //三個配置
        //1.先刪除表,再建立表:processEngineConfiguration.DB_SCHEMA_UPDATE_CREATE_DROP="create-drop"
        //2.不能自動建立表,需要表存在:processEngineConfiguration.DB_SCHEMA_UPDATE_FALSE="false"
        //3.如果表存在,就自動建立表:processEngineConfiguration.DB_SCHEMA_UPDATE_TRUE="true"
        processEngineConfiguration.setDatabaseSchema(processEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
        //獲取工作流的核心物件,ProcessEngine物件
        ProcessEngine processEngine=processEngineConfiguration.buildProcessEngine();
        System.out.println("processEngine:"+processEngine+"Create Success!!");
    }
}
上面的類先是獲取ProcessEngineConfiguration工作流引擎配置物件,來進行一些資料庫引數的配置,
然後使用配置物件建立工作流的核心物件ProcessEngine物件,使用核心引擎物件建立工作流需要的23張表。

可以看到我們上面建立了ProcessEngineConfiguration配置類,其中配置了資料庫的連結資料,那麼我們也要建立
相應的資料庫。
安裝好Mysql後,開啟我們的Mysql的圖形化管理工具,這裡我使用的是sqlyog:

開啟之後,我們建立相應的資料庫(和上面連結類中的資料庫名稱相同即可):


別忘記在lib中加入mysql的jdbc驅動jar包,然後新增到classpath中:
mysql-connector-java-5.1.10-bin.jar

執行剛剛我們的測試類,等待一會後,就會發現工作流核心引擎建立成功:

這就意味著我們的工作流需要的23張表已經建立成功,我們去sqlyog去看,發現確實生成了:

此時,準備Activiti的環境除了配置檔案外,已經全部準備完畢。

下一次我們介紹如何準備開發環境(配置檔案)和核心api的講解。