flowable-spring-boot-starter 与 flowable-ui

flowable-spring-boot-starter 和 flowable-ui 是 Flowable 项目中两个独立的模块/库。

详细说明:

  1. flowable-spring-boot-starter:

    • 定位 :这是 Flowable 工作流引擎的 Spring Boot 自动化配置核心依赖。它包含了 Flowable 的核心引擎功能(如 BPMN、CMMN、DMN 等),并提供了与 Spring Boot 的自动集成(自动创建数据库表、配置事务、提供默认的 ProcessEngine 等)。

    • 包含的内容 :流程引擎、REST API、Java API、事件监听器等后端运行和集成所需的核心组件。

    • 用途 :主要用于在你的 Spring Boot 应用中嵌入和运行工作流引擎,通过编程或 REST API 来驱动流程。

  2. flowable-ui:

    • 定位 :这是一个基于 Web 的图形化用户界面应用,用于设计、管理和监控流程。

    • 包含的模块:通常包含 Modeler(流程设计器)、Task App(任务应用,处理用户任务)、Admin App(管理控制台)和 IDM App(身份管理)。

    • 用途 :提供给业务人员、管理员和开发者一个可视化的工具,用于设计流程模型、启动流程实例、处理待办任务、查看报表和历史数据等。

    • 部署方式 :它是一个独立的 .war 文件,需要部署到 Servlet 容器(如 Tomcat)中,或者也可以通过 Docker 容器运行。它需要连接到你自己的 Flowable 引擎数据库。

典型使用场景:

  • 仅需要引擎功能(最常见) :你只想在你的微服务或应用中通过代码驱动业务流程,不需要可视化的设计和管理界面。那么只需要引入 flowable-spring-boot-starter 即可。

  • 需要UI进行设计和监控:

    1. 在你的业务应用中引入 flowable-spring-boot-starter,部署并运行你的应用(引擎启动,操作数据库)。

    2. 额外单独部署 flowable-ui 应用。

    3. 在 flowable-ui 的配置中,将其数据库连接指向第一步中你的应用所使用的同一个数据库。

    4. 这样,flowable-ui 就能读取到你的流程定义、任务实例等数据,并提供可视化操作。

在 Maven 中的体现:

XML 复制代码
<!-- 核心引擎 Starter(不包含UI) -->
<dependency>
    <groupId>org.flowable</groupId>
    <artifactId>flowable-spring-boot-starter</artifactId>
    <version>6.8.0</version> <!-- 请使用最新稳定版本 -->
</dependency>

<!-- UI 是一个独立的应用,通常不作为依赖引入,而是单独部署 -->
<!-- 你可以从 Flowable 官网下载 flowable-ui 的 war 包 -->

总结:

  • flowable-spring-boot-starter = 引擎的心脏和肌肉(驱动业务)

  • flowable-ui = 操作面板和仪表盘(给人看的、操作的)

它们是互补关系,但设计上是分离的,以满足不同的部署和架构需求(例如,在生产环境中,可能只部署引擎,而UI仅用于开发和测试环境)。

相关推荐
传奇开心果编程6 小时前
【SwiftUI提高练中学】第8课 网络层架构:拦截器、重试、缓存与离线优先
学习·macos·ui·ios·swiftui
传奇开心果编程7 小时前
【现代声明式UI学与练】第7课 组件通信——父传子、子传父、跨层级通信、状态提升与 Context
学习·flutter·react native·ui·swiftui·android jetpack
大圣编蚕9 小时前
Rancher证书轮换过期导致不能访问UI问题处理
ui·rancher
可乐ea10 小时前
Agent 评测换判据:用终态数据库状态判定任务是否完成
数据库·ui·oracle·mcp工具·agent评测·终态断言·智能体可靠性
传奇开心果编程13 小时前
【Compose Multiplatform 跨端开发学与练】第3课 布局与组件
android·windows·学习·ui·ios·kotlin·composer
传奇开心果编程16 小时前
【现代声明式UI学与练】第9课 性能优化——渲染优化、列表优化、内存优化、启动优化
学习·flutter·react native·ui·性能优化·swiftui·android jetpack
传奇开心果编程18 小时前
【Compose Multiplatform 跨端开发学与练】第4课 导航与路由
android·windows·学习·ui·ios·kotlin·composer
传奇开心果编程18 小时前
【Compose Multiplatform 跨端开发学与练】第6课 状态管理与架构
android·学习·ui·ios·架构·kotlin·composer
传奇开心果编程18 小时前
【Compose Multiplatform 跨端开发学与练】第2课 Compose 基础语法
android·windows·学习·ui·ios·kotlin·composer
传奇开心果编程1 天前
【ArkUI进阶练中学】第11课:安全与合规进阶
学习·ui·华为·harmonyos