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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第5篇:Flowable-Modeler详述之开发环境搭建

發布時間:2024/9/27 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第5篇:Flowable-Modeler详述之开发环境搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

接上一篇:
第4篇:Flowable-Modeler詳述之流程概述
https://blog.csdn.net/weixin_40816738/article/details/102886712

文章目錄

  • 一、環境搭建
    • 1. 下載/安裝jdk
    • 2. 安裝mysql 5.7
    • 3. 安裝idea
    • 4. 配置maven
      • 4.1. 配置maven倉庫
      • 4.2. mirrors中添加阿里服務器
      • 4.3. 在idea中配置maven
    • 5. 新建maven工程
    • 6. 新建子工程
  • 二、依賴引入
    • 2.1. 父工程maven依賴
    • 2.2. 子工程Maven依賴
  • 三 、案例演練
    • 3.1. 添加一個controller用來測試流程是否啟動成功
    • 3.2. 新建接口
    • 3.3. 新建邏輯處理類
    • 3.4. 增加啟動類和包掃描
    • 3.5. 配置yml文件
    • 3.6. 創建一個mysql數據庫
    • 3.7. 啟動服務
    • 3.8. mysql中的表總覽
    • 3.9. 測試查看創建結果
    • 3.10 . 查看流程在表中的內容

前言:

  • Flowable的modeler的環境已經搭建完成,并且可以繪制modeler模型了,我們繪制一個簡>單的流程只有開始和結束的流程節點。
  • 加入啟動類,自動引入相關的使用的包。
  • 一、環境搭建

    1. 下載/安裝jdk

    -建議使用jdk 8

    JDK環境變量配置_windows
    https://blog.csdn.net/weixin_40816738/article/details/102893885

    2. 安裝mysql 5.7

    win10 下安裝、配置、啟動mysql
    https://blog.csdn.net/weixin_40816738/article/details/90112245

    3. 安裝idea

    官網地址:https://www.jetbrains.com/idea/download/

    IntelliJ IDEA 2019 下載安裝
    https://blog.csdn.net/weixin_40816738/article/details/90209326

    4. 配置maven

    4.1. 配置maven倉庫

    maven的配置 conf/settings.xml配置添加本地倉庫如下:

    <localRepository>D:\rep</localRepository>

    4.2. mirrors中添加阿里服務器

    <mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf></mirror>

    4.3. 在idea中配置maven

    點擊File->Settings按如下操作

    5. 新建maven工程

    【File】-【New Project】-,工程名為 flowablestudy


    6. 新建子工程

    • 添加一個模塊作為工程的一個子模塊,在工程上點擊右鍵,New->Module,配置模塊如下:

    二、依賴引入

    2.1. 父工程maven依賴

    • pom中配置springboot的pom文件
    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.gblfy</groupId><artifactId>flowablestudy</artifactId><packaging>pom</packaging><version>1.0-SNAPSHOT</version><modules><module>flowablelech5</module></modules><!--springboot 父工程--><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.1.RELEASE</version></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- SpringBoot 攔截器 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.3.2</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.13</version></dependency><dependency><groupId>org.flowable</groupId><artifactId>flowable-spring-boot-starter</artifactId><version>6.4.1</version></dependency><!--常用工具類 --><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.4</version></dependency><!--集合常用工具類 --><dependency><groupId>org.apache.commons</groupId><artifactId>commons-collections4</artifactId><version>4.2</version></dependency><!--io常用工具類 --><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.5</version></dependency><!--文件上傳工具類 --><dependency><groupId>commons-fileupload</groupId><artifactId>commons-fileupload</artifactId><version>1.3.3</version></dependency></dependencies> </project>

    2.2. 子工程Maven依賴

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><parent><groupId>com.gblfy</groupId><artifactId>flowablestudy</artifactId><version>1.0-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><artifactId>flowablelech5</artifactId><dependencies><dependency><groupId>org.flowable</groupId><artifactId>flowable-engine</artifactId><version>6.4.1</version><scope>compile</scope></dependency><dependency><groupId>org.flowable</groupId><artifactId>flowable-spring</artifactId><version>6.4.1</version><scope>compile</scope></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><mainClass>com.gblfy.FlowableApplication</mainClass><includeSystemScope>true</includeSystemScope></configuration><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins></build> </project>

    三 、案例演練

    3.1. 添加一個controller用來測試流程是否啟動成功

    package com.gblfy.controller;import com.gblfy.service.IFlowService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody;import java.util.HashMap; import java.util.Map;/*** @author gblfy* @ClassNme FlowController* @Description TODO* @Date 2019/11/4 13:58* @version1.0*/ @Controller @RequestMapping(value = "flow") public class FlowController {/*** 日志類*/private static final Logger log = LoggerFactory.getLogger(FlowController.class);/*** 流程處理服務*/@Autowiredprivate IFlowService flowService;@RequestMapping("/create")@ResponseBodypublic Map<String,String> createFlow(){Map<String,String> res =new HashMap<>();// String flowPath ="E:\\flowablestudy\\flowablech5\\src\\main\\resources\\flows\\測試BPMN模型.bpmn20.xml";String flowPath ="C:\\Users\\gblfy\\Desktop\\Workflow\\flowablestudy\\flowablelech5\\src\\main\\resources\\processes\\測試BPMN模型.bpmn20.xml";if (null == flowService.createFlow(flowPath)){res.put("msg","創建流程失敗");res.put("res","0");return res;}res.put("msg","創建流程成功");res.put("res","1");return res;} }

    3.2. 新建接口

    • 添加service查看提供流程的一些服務,本次只有一個啟動流程的服務
    • IFlowService
    package com.gblfy.service;import org.flowable.engine.repository.Deployment;/*** 流程服務類*/ public interface IFlowService {/*** 部署工作流*/Deployment createFlow(String filePath); }

    3.3. 新建邏輯處理類

    • FlowServiceImpl
    package com.gblfy.service.impl;import com.gblfy.service.IFlowService; import org.flowable.bpmn.converter.BpmnXMLConverter; import org.flowable.bpmn.model.BpmnModel; import org.flowable.bpmn.model.Process; import org.flowable.engine.RepositoryService; import org.flowable.engine.repository.Deployment; import org.flowable.engine.repository.DeploymentBuilder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Primary; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils;import javax.xml.stream.XMLInputFactory; import javax.xml.stream.XMLStreamException; import javax.xml.stream.XMLStreamReader; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.util.List;/*** @author gblfy* @ClassNme IFlowServiceImpl* @Description TODO* @Date 2019/11/4 14:01* @version1.0*/ @Primary @Service public class FlowServiceImpl implements IFlowService {/*** 日志類*/private static final Logger log = LoggerFactory.getLogger(FlowServiceImpl.class);/*** Flowable運行時服務*/@Autowiredprivate RepositoryService repositoryService;@Overridepublic Deployment createFlow(String filePath) {//解析BPMN模型看是否成功XMLStreamReader reader = null;InputStream inputStream = null;try {BpmnXMLConverter bpmnXMLConverter = new BpmnXMLConverter();XMLInputFactory factory = XMLInputFactory.newInstance();inputStream=new FileInputStream(new File(filePath));reader = factory.createXMLStreamReader(inputStream);BpmnModel model = bpmnXMLConverter.convertToBpmnModel(reader);List<Process> processes = model.getProcesses();Process curProcess = null;if (CollectionUtils.isEmpty(processes)) {log.error("BPMN模型沒有配置流程");return null;}curProcess = processes.get(0);inputStream=new FileInputStream(new File(filePath));DeploymentBuilder deploymentBuilder = repositoryService.createDeployment().name("TEST_FLOW").addInputStream(curProcess.getName(),inputStream);Deployment deployment= deploymentBuilder.deploy();log.warn("部署流程 name:"+curProcess.getName() + " "+deployment);return deployment;}catch (Exception e){log.error("BPMN模型創建流程異常",e);return null;}finally {try {reader.close();} catch (XMLStreamException e) {log.error("關閉異常",e);}}} }

    3.4. 增加啟動類和包掃描

    package com.gblfy;import org.mybatis.spring.annotation.MapperScan; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.ComponentScan;/*** @author gblfy* @ClassNme FlowableApplication* @Description TODO* @Date 2019/11/4 14:07* @version1.0*/ //掃描Service @ComponentScan(basePackages = { "com.gblfy.**" }) //掃描Mapper @MapperScan(basePackages = {"com.gblfy.**"}) @SpringBootApplication public class FlowableApplication {private final static Logger logger = LoggerFactory.getLogger(FlowableApplication.class);public static void main(String[] args){logger.info("開始啟動服務 ");SpringApplication.run(FlowableApplication.class,args);logger.info("完成啟動服務 ");} }

    3.5. 配置yml文件

    server:port: 8989tomcat:# tomcat的URI編碼uri-encoding: UTF-8# tomcat最大線程數,默認為200max-threads: 200# Tomcat啟動初始化的線程數,默認值25min-spare-threads: 30mybatis:mapper-locations: classpath:mapper/*.xmltype-aliases-package: com.gblfy # 注意:對應實體類的路徑# 數據源配置 spring:datasource:driverClassName: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/flowstudy?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&autoReconnect=true&&zeroDateTimeBehavior=convertToNull&useSSL=true&allowMulQueries=true&&nullCatalogMeansCurrent=trueusername: rootpassword: root

    3.6. 創建一個mysql數據庫

    • flowstudy,設置編碼為UTF-8
    CREATE DATABASE /*!32312 IF NOT EXISTS*/`flowstudy` /*!40100 DEFAULT CHARACTER SET utf8 */;

    3.7. 啟動服務

    啟動的時候會自動創建我們需要的表,如果另外一個activity的示例安裝過數據庫,注意配置上面的啟動項的參數,設置nullCatalogMeansCurrent=true,啟動建表打印如下:

    3.8. mysql中的表總覽

    3.9. 測試查看創建結果

    3.10 . 查看流程在表中的內容

    • 部署ID表 act_re_deployment
    • 部署內容表:act_ge_bytearray

    源碼地址:
    Gitlab鏈接:
    https://gitlab.com/gb-heima/flowablestudy/tree/master/flowablelech5
    碼云地址:https://gitee.com/gb_90/flowable-study/tree/master/flowablelech5

    下一篇:
    第6篇:Flowable-Modeler詳述之常見問題Table act_ge_property doesn’t exist
    https://blog.csdn.net/weixin_40816738/article/details/102899408

    總結

    以上是生活随笔為你收集整理的第5篇:Flowable-Modeler详述之开发环境搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

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

    主站蜘蛛池模板: 久久精品无码中文字幕 | 国产精品久久视频 | 日韩精品在线视频观看 | 欧美亚洲二区 | av免费毛片| 久久两性视频 | 成人特级毛片69免费观看 | 九九自拍视频 | www.九色| 打开免费观看视频在线 | www.伊人 | 国产成人无遮挡在线视频 | 三级在线视频 | 精品中文字幕一区 | 四虎av在线| a级片一级片 | 99热这里只有精品4 精品国产黄色 | 色哟哟官网 | 黑巨茎大战欧美白妞 | 成人免费网站www网站高清 | 99久久精品一区二区 | avtt久久| 国产乱码一区二区三区播放 | 国产精品久久久久久一区 | 国产suv精品一区二区60 | 久久久噜噜噜久久 | 中文字幕视频一区 | 国产欧美精品一区 | 娇小6一8小毛片 | 农村村妇真实偷人视频 | 高级家教课程在线观看 | 四虎福利视频 | 亚洲第9页| 99热免费在线观看 | 揄拍自拍| 男人网站在线观看 | 日韩在线播放一区二区 | 日本中文字幕免费 | 日韩亚洲国产欧美 | 午夜香蕉 | 精品国产一区在线 | 欧美久久久久久久久久久久久久 | 亚洲国产剧情 | 日韩人妻无码精品综合区 | av草逼| 天天色av | 国产免费脚交足视频在线观看 | 国产精品看片 | 长篇乱肉合集乱500小说日本 | 午夜福利电影 | 久草综合在线观看 | 免费观看视频一区 | 久久中文娱乐网 | 男生脱女生衣服 | 日本黄色录相 | 人人干人人舔 | 国产乱码77777777 | 精品不卡一区二区三区 | 欧美亚洲一区二区三区 | 亚洲精品视频在线 | 91操视频| 久久久夜色精品 | av私库在线观看 | 青草视频免费观看 | 日韩欧美成人一区二区 | 丝袜操 | 久久综合久色欧美综合狠狠 | 色婷婷综合在线 | 亚洲精品一区二区三区蜜桃久 | 欧美成人久久久免费播放 | 国产婷婷在线视频 | 久久精品高清视频 | 欧美3p视频 | 亚洲精品成人电影 | 亚洲成人天堂 | 国产毛片一区二区 | 成人午夜精品 | 久草网视频 | 国产视频网站在线观看 | 欧美日韩中文字幕一区 | 夜色在线视频 | 西西44rtwww国产精品 | 成人自拍在线 | 亚洲国产一区在线 | 国产精品伊人 | 一区二区三区免费高清视频 | 日本午夜大片 | 国产精品电影一区二区三区 | 91精品一区二区三区在线观看 | 精品国产免费观看 | 少妇 av| 久久综合爱 | 日韩在线资源 | 尤物精品在线 | 深夜成人福利视频 | 欧美日韩精品在线播放 | 四虎成人永久免费视频 | 日韩精品免费观看 | 三上悠亚激情av一区二区三区 |