后端工程结构
核心模块结构
1. 基础模块 (Foundation Modules)
innospots-base
- 功能: 项目基础模块,提供核心工具类、通用配置和基础设施
- 职责: 定义项目的基础架构和通用组件
innospots-bom
- 功能: 依赖管理模块 (Bill of Materials)
- 职责: 统一管理项目中所有依赖的版本,确保依赖一致性
innospots-universal
- 功能: 通用工具模块
- 职责: 提供跨模块的通用功能和工具类
2. 数据处理模块 (Data Processing Modules)
innospots-data-provider
- 功能: 数据提供者模块
- 职责: 统一数据访问接口,支持多种数据源的连接和数据获取
innospots-connector
- 功能: 连接器模块集合
- 子模块:
innospots-connector-core
: 连接器核心功能innospots-connector-mysql
: MySQL 数据库连接器innospots-connector-redis
: Redis 缓存连接器innospots-connector-kafka
: Kafka 消息队列连接器innospots-connector-api
: API 连接器innospots-connector-imap
: IMAP 邮件连接器innospots-connector-workflow
: 工作流连接器innospots-connector-ai
: AI 服务连接器
3. 脚本执行模块 (Script Execution Modules)
innospots-script
- 功能: 多语言脚本执行引擎
- 子模块:
innospots-script-base
: 脚本执行基础框架innospots-script-java
: Java 脚本执行器innospots-script-javascript
: JavaScript 脚本执行器innospots-script-graaljs
: GraalJS 高性能 JavaScript 执行器innospots-script-groovy
: Groovy 脚本执行器innospots-script-python
: Python 脚本执行器innospots-script-function
: 函数式编程支持
4. 工作流模块 (Workflow Modules)
innospots-workflow
- 功能: 工作流引擎和编排系统
- 职责: 提供可视化工作流设计、执行和监控功能
- 子模块:
innospots-workflow-core
: 工作流核心引擎,提供工作流定义、执行和状态管理innospots-workflow-runtime
: 工作流执行器,负责节点调度和任务执行innospots-workflow-nodes
: 预置节点集合,包含数据处理、AI、脚本等功能节点innospots-workflow-console
: 工作流管理控制台,提供可视化管理界面
5. 调度模块 (Scheduling Modules)
innospots-schedule
- 功能: 任务调度系统
- 子模块:
innospots-schedule-core
: 调度核心功能innospots-schedule-executor
: 任务执行器innospots-schedule-workflow
: 工作流调度innospots-schedule-node
: 分布式节点调度innospots-schedule-console
: 调度管理控制台
6. AI 集成模块 (AI Integration Modules)
innospots-ai
- 功能: AI 服务集成平台
- 子模块:
innospots-ai-core
: AI 核心功能innospots-ai-openai
: OpenAI 集成innospots-ai-zhipu
: 智谱 AI 集成innospots-ai-bailian
: 阿里云百炼 AI 集成innospots-ai-google-vertex
: Google Vertex AI 集成innospots-ai-groq
: Groq AI 集成innospots-ai-ollama
: Ollama 本地 AI 集成innospots-ai-siliconflow
: SiliconFlow AI 集成
7. 应用模块 (Application Modules)
innospots-app
- 功能: 应用层模块
- 子模块:
innospots-app-core
: 应用核心功能innospots-app-console
: 管理控制台innospots-app-visitor
: 访客应用
8. 审批模块 (Approval Modules)
innospots-approve
- 功能: 审批流程管理
- 子模块:
innospots-approve-core
: 审批核心功能innospots-approve-console
: 审批管理控制台innospots-approve-node
: 审批节点处理
9. 权限管理模块 (Authorization Modules)
innospots-libra
- 功能: 基础平台模块
- 子模块:
innospots-libra-base
: 权限基础功能innospots-libra-auth
: 认证服务innospots-libra-kernel
: 控制台核心
10. 服务器模块 (Server Modules)
innospots-server
- 功能: 服务器和部署相关模块
- 子模块:
innospots-server-base
: 服务器基础功能innospots-server-alone
: 独立部署服务器
重点第三方依赖
依赖包 | 用途 |
---|---|
Spring 生态系统 | |
spring-cloud-dependencies | Spring Cloud 微服务框架,提供分布式系统开发支持 |
spring-boot-dependencies | Spring Boot 框架,简化 Spring 应用开发 |
spring-ai-bom | Spring AI 框架,提供人工智能集成支持 |
spring-security-bom | Spring Security 安全框架,提供认证和授权功能 |
数据库相关 | |
mybatis-plus-boot-starter | MyBatis-Plus ORM 框架,简化数据库操作 |
mysql-connector-j | MySQL 数据库连接驱动 |
postgresql | PostgreSQL 数据库连接驱动 |
jedis | Redis 客户端,用于缓存和数据存储 |
缓存 | |
caffeine | 高性能本地缓存库 |
开发工具 | |
lombok | 代码生成工具,减少样板代码 |
mapstruct | 对象映射框架,简化 Bean 转换 |
脚本引擎 | |
aviator | 轻量级表达式引擎,用于动态表达式计算 |
nashorn-core | JavaScript 脚本引擎 |
工具库 | |
guava | Google 核心 Java 库,提供集合、缓存等工具 |
hutool-all | Java 工具类库,提供各种实用工具方法 |
Apache Commons 系列 | |
commons-lang3 | 字符串、数组等基础工具类 |
commons-collections4 | 集合工具类扩展 |
commons-io | IO 操作工具类 |
commons-codec | 编码解码工具类 |
commons-compress | 压缩解压工具类 |
commons-csv | CSV 文件处理工具 |
commons-net | 网络协议工具类 |
文档处理 | |
poi | Apache POI,用于处理 Microsoft Office 文档 |
easyexcel | 阿里巴巴 Excel 处理工具 |
序列化 | |
jackson-bom | Jackson JSON 处理框架 |
fastjson | 阿里巴巴 JSON 处理库 |
snack3 | 轻量级 JSON 处理库 |
数据处理 | |
calcite-core | Apache Calcite 数据处理引擎 |
tablesaw-core | 数据分析和可视化库 |
ta4j-core | 技术分析库,用于金融数据分析 |
网络通信 | |
apache-sshd | SSH 客户端和服务器实现 |
邮件 | |
jakarta.mail | 邮件发送功能 |
测试数据 | |
datafaker | 测试数据生成工具 |
存储 | |
mapdb | 嵌入式数据库引擎 |
系统监控 | |
oshi-core | 系统和硬件信息获取库 |
micrometer-registry-prometheus | Prometheus 监控指标注册 |
micrometer-jvm-extras | JVM 额外监控指标 |
用户代理 | |
UserAgentUtils | 用户代理字符串解析工具 |
API 文档 | |
swagger-annotations | Swagger API 文档注解 |
springdoc-openapi | OpenAPI 3.0 文档生成 |
反射工具 | |
reflections | Java 反射工具库 |
高性能 | |
disruptor | LMAX Disruptor 高性能并发框架 |
云服务 | |
tea-openapi | 阿里云 OpenAPI SDK |
docmind_api | 阿里云文档智能 API |
credentials-java | 阿里云凭证管理 |
依赖注入 | |
jakarta.inject-api | Jakarta 依赖注入 API |
日志 | |
slf4j-simple | SLF4J 简单日志实现 |
UI 组件 | |
innospots-ui | Innospots 主界面组件 |
innospots-workflow-ui | Innospots 工作流界面组件 |
innospots-page-ui | Innospots 页面界面组件 |