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