项目简介
基于若依Cloud的Jove-Fast微服务项目,集成工作流flowable(接上篇文章)
若依Cloud集成积木报表
项目地址:https://gitee.com/wxjstudy/jove-fast
后端
新建模块
目录结构如下:
引入依赖
前提:引入依赖之前先配置好maven的setting.xml
<mirror><id>nexus-aliyun</id><mirrorOf>*,!jeecg,!jeecg-snapshots,!getui-nexus</mirrorOf><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public</url></mirror>
再看pom.xml核心内容
<dependency><groupId>org.flowable</groupId><artifactId>flowable-spring-boot-starter-basic</artifactId><version>${flowable.version}</version><exclusions><!-- 需要排除flowable的mybatis依赖,不然会跟mybatis冲突 --><exclusion><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.flowable</groupId><artifactId>flowable-engine</artifactId><version>${flowable.version}</version><scope>compile</scope></dependency>
配置文件
nacos上的yml配置,命名为 xxx-flowable-dev.yml
# spring配置
spring: # 文件上传servlet:multipart:# 单个文件大小max-file-size: 20MB# 设置总上传的文件大小max-request-size: 400MBredis:host: 127.0.0.1port: 6379password: 123456database: 1datasource:dynamic:druid:#连接池初始化大小initial-size: 10 #最大连接数max-active: 50 #最小空闲连接数min-idle: 10 max-wait: 60000# 申请连接时时候检测test-while-idle: true# 销毁线程时检测当前连接的最后活动时间和当前时间差大于该值时,关闭当前连接max-evictable-idle-time-millis: 60000# 毁线程时检测当前连接的最后活动时间和当前时间差大于该值时,关闭当前连接min-evictable-idle-time-millis: 40000# 检测是否是有效sql mysql 是 x oracle 是 select 1 from dualvalidation-query: select 1# 申请连接时会执行validationQuery检测连接是否有效,开启会降低性能,默认为truetest-on-borrow: false# 归还连接时会执行validationQuery检测连接是否有效,开启会降低性能,默认为truetest-on-return: false# 当数据库抛出不可恢复的异常时,抛弃该连接exception-sorter: true# 置访问druid监控页的账号和密码,默认没有stat-view-servlet:enabled: trueurl-pattern: /*exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*" #不统计这些请求数据stat-view-servlet: #访问监控网页的登录用户名和密码url-pattern: /druid/*reset-enable: falselogin-username: adminlogin-password: 123456datasource:# 主库数据源master:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/flowable-test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=trueusername: rootpassword: 123456# 从库数据源slave:driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriverurl: jdbc:sqlserver://127.0.0.1:1433;databasename=testusername: adminpassword: 123456seata: false# seata配置
seata:# 默认关闭,如需启用spring.datasource.dynami.seata需要同时开启enabled: false# Seata 应用编号,默认为 ${spring.application.name}application-id: ${spring.application.name}# Seata 事务组编号,用于 TC 集群名tx-service-group: ${spring.application.name}-group# 关闭自动代理enable-auto-data-source-proxy: false# 服务配置项service:# 虚拟组和分组的映射vgroup-mapping:jove-flowable-prod-group: defaultconfig:type: nacosnacos:serverAddr: 127.0.0.1:81group: SEATA_GROUPnamespace: 457ea067-0192-4a23-baab-cc1bc538522bregistry:type: nacosnacos:application: seata-serverserver-addr: 127.0.0.1:81namespace: 457ea067-0192-4a23-baab-cc1bc538522b# mybatis配置
mybatis:configuration: # 超时单位为秒default-statement-timeout: 900# 搜索指定包别名typeAliasesPackage: com.jovefast.flowable# 配置mapper的扫描,找到所有的mapper.xml映射文件mapperLocations: classpath:mapper/**/*.xml
logging:level:com.jovefast.flowable.mapper: info# swagger配置
swagger:title: 工作流中心模块接口文档license: Powered By xxxlicenseUrl: https://xxx.com# 暴露监控端点
management:endpoints:web:exposure:include: '*'endpoint:health:show-details: ALWAYSlogfile:#可在线查看日志enabled: trueexternal-file: logs/jove-flowable.log
模块克隆
直接将整个Flowable模块的引入到自己若依cloud项目中即可,代码在我的开源项目地址
参考提交记录:集成flowale
结束
好了,以上就是集成工作流flowable~