成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Activiti6之表結構分析-引擎配置及流程部署

xorpay / 1240人閱讀

摘要:如圖流程引擎創(chuàng)建完成后,只會對進行操作,屬性數(shù)據(jù)表存儲整個流程引擎級別的數(shù)據(jù)初始化表結構時,會默認插入四條記錄,流程部署測試流程部署,先把上面的流程引擎配置的注解改為。如圖資源流程定義數(shù)據(jù)表這里面存放的就是我們部署的資源元數(shù)據(jù)信息。

關于activiti是什么,我這里就不多說了,我們直接上路,O(∩_∩)O哈哈~

引擎配置

配置方式有好幾種:
1):

/**
 * 獲取默認的流程引擎實例 會自動讀取activiti.cfg.xml文件,驅動包,url,數(shù)據(jù)庫用戶名,密碼寫在xml中
 */
private ProcessEngine processEngine=ProcessEngines.getDefaultProcessEngine();

2):通過java配置,我們這里講使用 JUnit單元測試,為了更清晰,我們使用Java配置,

    //流程引擎
    private ProcessEngine processEngine;
    
    /**    
     * @Description: 數(shù)據(jù)庫初始化
     * @param:       
     * @return: void        
     */
    @Test
    public void testProcessEngineConfiguration() {
        
        ProcessEngineConfiguration config = ProcessEngineConfiguration.createStandaloneProcessEngineConfiguration ();
        config.setJdbcDriver ("com.mysql.jdbc.Driver");
        config.setJdbcUrl("jdbc:mysql://localhost:3306/tx-activiti?characterEncoding=UTF-8&serverTimezone=UTC&nullCatalogMeansCurrent=true");
        config.setJdbcUsername("root");
        config.setJdbcPassword("root");
        
        //在構建過程引擎時,執(zhí)行檢查并在必要時執(zhí)行模式的更新. 如果沒有表則創(chuàng)建,
        config.setDatabaseSchemaUpdate (ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);

        processEngine = config.buildProcessEngine ();
    }
    

我們只需要新建好數(shù)據(jù)庫,然后執(zhí)行上面的 單元測試方法, 然后就會自動在表中新建 28 張表。

如圖:

流程引擎創(chuàng)建完成后,只會對 act_ge_property 進行操作,

act_ge_property 屬性數(shù)據(jù)表存儲整個流程引擎級別的數(shù)據(jù),初始化表結構時,會默認插入四條記錄,

流程部署

測試流程部署,先把上面的流程引擎配置的注解改為@Before。

    @Before
    //@Test
    public void testProcessEngineConfiguration() {
      //...
    }

部署流程:

/**    
     * @Description: 部署
     * @param:       
     * @return: void        
     */
    @Test
    public void testCreateDeployment() {
        
        Deployment deployment =  processEngine.getRepositoryService () // 倉庫服務
               .createDeployment () //創(chuàng)建部署對象
               .addClasspathResource ("diagrams/helloword.bpmn") // 加載資源文件
               .addClasspathResource ("diagrams/helloword.png")
               .name ("HelloWorld") //流程名稱
               .key ("helloword_key") // 部署key
               .category ("test") //類別
               .tenantId ("hz") //租戶id,用于區(qū)分多個項目共用一個流程服務
               .deploy ();
        
        System.out.println ("流程部署ID:"+ deployment.getId ());
        System.out.println ("流程部署Key:"+ deployment.getKey ());
        System.out.println ("流程部署Name:"+ deployment.getName ());
        System.out.println ("流程部署TenantId:"+ deployment.getTenantId ());
        System.out.println ("流程部署Time:"+ deployment.getDeploymentTime ());
        System.out.println ("流程部署Category類別:"+ deployment.getCategory ());
    }

返回結果:

流程部署ID:2501
流程部署Key:helloword_key
流程部署Name:HelloWorld
流程部署TenantId:hz
流程部署Time:Sun Apr 28 16:52:32 CST 2019
流程部署Category類別:test

流程部署成功,我們接下來看看他們對表結構做了什么動作。根據(jù)時間排序,我們發(fā)現(xiàn)有4個表發(fā)生了變更。

act_ge_property:通用_屬性表

next.dbid : 由原來的 1 變成了 2501, 下一個主鍵發(fā)送了變動(感覺類似oracle的游標)。其他的沒有變動。 如圖:

act_re_procdef:資源_流程定義數(shù)據(jù)表

這里面存放的就是我們部署的資源元數(shù)據(jù)信息。如圖:

這里關注ID, 流程定義ID: helloworld:1:4 -> key:部署id:隨機數(shù)
這里有一個 TENANT_ID, 其他信息存哪里了呢? 比如: Key 什么的, 我們接著看

感覺這存的就是我們的這一塊元數(shù)據(jù)信息:

act_re_deployment:資源_部署信息表

感覺這存的就是我們的這一塊元數(shù)據(jù)信息:

act_ge_bytearray:通用_二進制數(shù)據(jù)表

這存的就是我們的流程圖片和XML的二進制數(shù)據(jù):

總結

一共涉及的表:
1:通用數(shù)據(jù)表
1) act_ge_bytearray 二進制數(shù)據(jù)表
2) act_ge_property 屬性數(shù)據(jù)表存儲整個流程引擎級別的數(shù)據(jù),初始化表結構時,會默認插入四條記錄,
2:資源庫流程規(guī)則表
1) act_re_deployment 部署信息表
2) act_re_procdef 流程定義數(shù)據(jù)表

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/74338.html

相關文章

  • Activiti6實現(xiàn)自由跳轉

    摘要:跳轉方法當前任務獲取流程定義獲取目標節(jié)點定義刪除當前運行任務流程執(zhí)行到來源節(jié)點刪除當前運行時任務命令,并返回當前任務的執(zhí)行對象這里繼承了,主要時很多跳轉業(yè)務場景下,要求不能時掛起任務。 前言 工作快2年的小白,如有錯誤,懇請大家批評指點,這也是開始寫博客的一個初衷,能夠在分享互動、知識梳理中進步。之前工作的項目使用activiti5進行企業(yè)流程系統(tǒng)開發(fā),現(xiàn)在這份工作也開始需要流程開發(fā),...

    tianhang 評論0 收藏0
  • Activiti6通過監(jiān)聽修改實體id、springboot集成配置

    摘要:當一個根級的結束時,就會進行上述的緩存對象統(tǒng)一的持久化。解決的辦法也很簡單,改為監(jiān)聽,判斷是否時需要修改的任務實體即可。這樣后面要進行駁回時,只要通過這樣關系表,馬上就可以定位到要駁回到的任務了。 1.前言 本文內容主要為以下兩點,因為內容有交叉,所以會放在一起介紹。 1.以自由跳轉為基礎實現(xiàn)不改變原先任務id的駁回關于Activiti6動態(tài)跳轉可以查看我的另一篇文章Activiti...

    Taste 評論0 收藏0
  • Docker企業(yè)級管理平臺開放下載,免費使用

    摘要:云幫能解決什么問題新一代企業(yè)平臺讓開發(fā)人員輕松地開發(fā)部署和運維應用,讓架構師和運營人員利用熟知和可靠技術打造一個受控的運行環(huán)境。有助于加速企業(yè)級應用服務于市場,實現(xiàn)內部資源的有效利用。 云幫是什么? 云幫 是一款基于容器技術的應用管理平臺。社區(qū)版針對個人、企業(yè)完全免費,您可以自由的下載與傳播,但需要遵循我們的社區(qū)版協(xié)議。 云幫從哪里來? 云幫是 北京好雨科技有限公司 結合容器技術整合的...

    sumory 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<