日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

java 流程引擎_Activiti流程引擎对象及配置原理解析「建议收藏」(Java中@)

發布時間:2023/12/15 26 生活家
生活随笔 收集整理的這篇文章主要介紹了 java 流程引擎_Activiti流程引擎对象及配置原理解析「建议收藏」(Java中@) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

大家好,又見面了,我是你們的朋友風君子。如果您正在找激活碼,請點擊查看最新教程,關注關注公眾號 “全棧程序員社區” 獲取激活教程,可能之前舊版本教程已經失效.最新Idea2022.1教程親測有效,一鍵激活。

Jetbrains全系列IDE穩定放心使用

流程引擎對象和其配置對象都是activiti的核心對象

一、activiti的簡單使用流程

activiti在工作時,一般有以下幾個步驟:

創建一個流程引擎配置對象ProcessEngineConfiguration對流程引擎進行配置

通過流程引擎配置對象來獲取流程引擎對象ProcessEngine

通過流程引擎對象來部署流程圖

啟動流程

二、流程引擎配置對象ProcessEngineConfiguration的介紹

activiti用ProcessEngineConfiguration對象來配置流程引擎。ProcessEngineConfiguration類提供了多個創建該類對象的靜態方法,可以讀取相應的配置文件,返回ProcessEngineConfiguration實例。通過該類中提供的getter和setter方法可以對流程引擎配置對象進行配置。

三、activiti配置文件的介紹

activiti創建流程引擎配置對象時需要一個配置文件,

xmlns:context=”http://www.springframework.org/schema/context”

xmlns:tx=”http://www.springframework.org/schema/tx”

xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”

xsi:schemaLocation=”http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd

http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd”>

class=”org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration”>

仔細觀察這個配置文件,這其實是一個spring的配置文件,在其中配置了一個ProcessEngineConfiguration類的bean,然后在代碼中就可以讀取這個配置文件,獲取這個bean。

processEngineConfiguration這個bean要注入的屬性:

(1)數據庫連接相關的屬性

(2)databaseSchemaUpdate,數據庫策略,

false:默認值,設置為該值,activiti在啟動時如果數據庫中沒有表或者版本不匹配,會拋出異常

true:啟動時會對所有表進行更新,如果沒有表就會自動創建表

create-drop: 啟動時創建表,關閉時刪除表

針對其中的數據庫連接相關的屬性,我們還可以在這個配置文件中再配置一個數據源,在這里引用數據源的bean

四、獲取流程引擎配置對象

4.1 讀取默認名稱的配置文件來創建配置對象

ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault() 這個方法會在classpath下讀取名為activiti.cfg.xml的配置文件,并獲取名稱為processEngineConfiguration的bean返回。

所以如果在resources目錄下給定一個activiti.cfg.xml配置文件,在其中創建一個名為processEngineConfiguration的bean,在程序中調用這個方法就可以得到流程引擎配置對象。

/**

* 用ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault()

* 創建流程引擎配置對象

*/

@Test

public void test1() {

ProcessEngineConfiguration configuration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault();

System.out.println(configuration);

}

4.2 讀取自定義名稱的配置文件來創建流程引擎配置對象

ProcessEngineConfiguration.createProcessEngineConfigurationFromResource()方法可以加載指定位置的配置文件,并獲取給定名稱的bean來得到流程引擎配置對象。

@Test

public void test2() {

ProcessEngineConfiguration configuration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource(“cfg/activiti-cfg.xml”, “processEngineConfiguration”);

System.out.println(configuration);

}

五、流程引擎對象

ProcessEngine,流程引擎對象,是activiti的核心對象之一,使用該對象來部署流程。

要獲取該對象時,需要先獲取ProcessEngineConfiguration 流程引擎配置對象來對流程引擎進行配置,然后通過這個配置對象來獲取流程引擎對象。下面說明下如何獲取流程引擎對象

5.1 buildProcessEngine方法創建

這個方法是ProcessEngineConfiguration類的實例方法,該方法返回一個已經配置好的流程引擎對象

@Test

public void testCreateProcessEngine() {

ProcessEngineConfiguration configuration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault();

ProcessEngine processEngine = configuration.buildProcessEngine();

System.out.println(processEngine);

}

5.2 用ProcessEngines類來獲取

activiti在ProcessEngines類中也提供了創建流程引擎對象的方法,這是一個創建和關閉流程引擎的工具類,所有創建的(包括使用其他方式創建的)ProcessEngine實例都會被注冊到ProcessEngines中,實際上是在該類中維護了一個Map對象,key為ProcessEngine實例的名稱,value為ProcessEngine實例。

5.2.1使用ProcessEngines.init()方法獲取

ProcessEngines的init方法,會讀取activiti的默認配置文件,即classpath下的activiti.cfg.xml文件,并將創建的流程引擎實例緩存到map中,該方法會在map中創建key=default的ProcessEngine對象,

然后我們就可以先獲取到這個map,然后從map中獲取key=defalut的流程引擎對象。

@Test

public void testCreateProcessEngine2() {

//讀取配置文件,創建流程引擎對象緩存到map中

ProcessEngines.init();

//獲取map

Map enginesMap = ProcessEngines.getProcessEngines();

//獲取key為default的對象

ProcessEngine processEngine = enginesMap.get(“default”);

System.out.println(processEngine);

}

5.2.2 使用getDefaultProcessEngine()方法獲取

ProcessEngines的getDefaultProcessEngine()方法,會返回緩存map中的key為default的流程引擎對象,如果這個map還沒有進行初始化,該方法就會先調用ProcessEngines.init()方法初始化緩存map,然后再獲取key為default的流程引擎對象。

@Test

public void testCreateProcessEngine3() {

ProcessEngine defaultProcessEngine = ProcessEngines.getDefaultProcessEngine();

System.out.println(defaultProcessEngine);

}

比較以上的幾種創建流程引擎的方式,我們一般選擇ProcessEngines.getDefaultProcessEngine()方法來獲取,

因為這種方式最簡單,只需要提供一個使用默認名稱的配置文件activiti.cfg.xml,在其中做好對流程引擎的配置

然后我們就可以直接獲取流程引擎對象。

六、總結

以上介紹了activiti中的兩個核心對象,流程引擎配置對象和流程引擎對象,以及如何獲取這兩個對象。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

總結

以上是生活随笔為你收集整理的java 流程引擎_Activiti流程引擎对象及配置原理解析「建议收藏」(Java中@)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。