Files
CN_Gather/tools
hongawen 3cb4a46a16 refactor(report): 优化报告生成服务的安全性和文档处理
- 添加 FilePathSanitizer 工具类,防止路径穿越和非法字符问题
- 在报告目录路径构建中使用安全的文件名处理
- 为 BookmarkEnum 添加排序字段和注释说明
- 改进书签处理排序逻辑,使用 sort 字段而非依赖枚举声明顺序
- 添加批量处理的语义说明文档
- 优化数据处理流程中的哨兵标记机制
- 为 WordReportService 接口添加详细的资源管理契约文档
- 改进 dealDataLine 方法的职责分离和参数命名
- 修复测试结果详情书签键值引用错误
2026-05-26 19:20:03 +08:00
..
2025-11-04 14:35:16 +08:00

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等
  • 各工具特定的技术栈依赖