Tools 工具模块
这是CN_Gather项目的工具集合模块,用于管理各种通用工具。每个工具作为独立的子模块,拥有完整的MVC架构。
架构设计
tools/
├── report-generator/ # 报告生成工具
├── data-generator/ # 数据生成工具(未来扩展)
└── file-processor/ # 文件处理工具(未来扩展)
子模块说明
1. report-generator(报告生成工具)
- 功能: 通用的文档模板处理和报告生成
- 技术栈: Apache POI, docx4j
- 特性:
- 占位符替换
- 书签定位插入
- 动态表格生成
- 多文档合并
- 样式管理
2. data-generator(数据生成工具)
- 功能: MySQL数据生成、测试数据构造
- 状态: 待开发
3. file-processor(文件处理工具)
- 功能: 文件转换、批量处理等
- 状态: 待开发
设计原则
- 独立性: 每个工具子模块独立部署和使用
- 通用性: 脱离具体业务逻辑,提供纯技术能力
- 可扩展: 支持插件化扩展和自定义处理器
- 易集成: 提供简洁的API接口
使用方式
每个工具模块都提供HTTP接口和Java API两种使用方式:
- HTTP接口:适合微服务架构,跨语言调用
- Java API:适合同项目内直接依赖调用
模块间依赖
tools模块作为独立的工具集合,尽量减少对其他业务模块的依赖,主要依赖:
- 基础的Spring Boot框架
- 通用工具库(hutool等)
- 各工具特定的技术栈依赖