# 项目说明 ## 项目概述 **项目名称**: workutils **技术栈**: Spring Boot 3.2.3 + Java 21 + Maven **项目类型**: Java工作工具集项目 **主要用途**: 金融科技(FinTech)系统的开发和维护工具集 ## 主要功能模块 ### 1. SQL代码分析工具 - MyBatis XML文件解析和SQL提取 - SQL语法检查和质量分析 - 数据库表引用扫描 - 支持跨项目批量扫描 - 问题SQL检测和报告生成 ### 2. 代码扫描工具 - 关键字搜索和目录扫描 - Dubbo服务接口解析 - Redis键值对扫描 - 配置文件对比分析 - 项目依赖关系分析 ### 3. 文件处理工具 - Markdown转Excel转换器 - CSV/Excel文件批量处理 - 文件批量操作和过滤 - 数据格式转换 ### 4. Git操作工具 - 分支管理和对比 - 提交历史分析 - 版本控制自动化 - 代码差异检测 ### 5. 配置管理工具 - Apollo配置对比 - 环境配置分析 - 数据库表清单管理 - 跨环境配置差异检查 ## 核心功能说明 ### MyBatis SQL分析模块 - 解析MyBatis XML映射文件 - 提取SQL语句并进行语法检查 - 识别潜在的性能问题 - 生成标准化的SQL报告 ### Dubbo服务扫描 - 自动解析Dubbo注解和XML配置 - 提取服务提供者和消费者信息 - 生成服务接口清单 - 支持多项目并行扫描 ### 关键字检索系统 - 支持全目录递归搜索 - 多种关键字匹配模式 - 生成详细的检索报告 - 支持正则表达式搜索 ## 应用场景 主要用于**金融系统迁移、数据库重构、代码审查**等场景,包括: - **系统架构升级**: 代码审计和依赖分析 - **数据库迁移**: SQL质量检查和优化 - **微服务架构**: 服务依赖关系梳理 - **生产环境**: 配置管理和对比分析 - **代码审查**: 自动化代码质量检查 ## 技术特点 ### 企业级特性 - 针对金融系统特点定制 - 支持大规模代码库扫描 - 高并发处理能力 - 企业级日志和错误处理 ### 批量处理能力 - 支持多项目并行扫描 - 自动化的批量操作 - 性能优化的数据处理 ### 标准化输出 - 生成标准格式的报告文件(CSV/Excel) - 结构化的数据输出 - 易于集成到CI/CD流程 ## 项目结构 ``` workutils/ ├── src/main/java/com/example/workutils/ │ ├── advanceinspect/ # 高级检查工具 │ ├── dubboscan/ # Dubbo扫描工具 │ ├── keywordscan/ # 关键字扫描工具 │ ├── model/ # 数据模型 │ ├── utils/ # 工具类 │ └── deprecated/ # 弃用代码 ├── src/main/resources/ │ ├── config/ # 配置文件 │ ├── export/ # 输出文件目录 │ └── compare/ # 对比文件 └── pom.xml # Maven配置 ``` ## 依赖说明 项目使用的主要依赖包括: - **Spring Boot**: 基础框架 - **MyBatis**: SQL解析 - **EasyExcel**: Excel文件处理 - **JGit**: Git操作 - **Dubbo**: 服务扫描 - **Apache Commons**: 工具库 ## 使用方式 ### 快速开始 ```bash # 编译项目 mvn clean compile # 运行特定工具 java -cp target/classes com.example.workutils.advanceinspect.AllProjectSimpleXmlSQLExportorV5 ``` ### 配置说明 - 项目路径配置在 `src/main/resources/config/代码仓库项目路径.txt` - 输出文件默认生成在 `src/main/resources/export/` 目录 - 支持自定义扫描规则和过滤器 ## 输出文件格式 项目生成的标准输出格式包括: - **CSV文件**: 适用于数据分析和导入 - **Excel文件**: 提供可视化报告 - **日志文件**: 详细的操作记录 ## 注意事项 - 项目需要访问实际的代码仓库路径 - 部分功能需要配置相应的环境变量 - 建议在生产环境使用前进行充分测试 --- *这是一个高度专业化的内部工具集,主要服务于金融科技公司的开发和运维团队。*