166 lines
3.9 KiB
Markdown
166 lines
3.9 KiB
Markdown
# 项目说明
|
|
|
|
## 项目概述
|
|
|
|
**项目名称**: 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文件**: 提供可视化报告
|
|
- **日志文件**: 详细的操作记录
|
|
|
|
## 注意事项
|
|
|
|
- 项目需要访问实际的代码仓库路径
|
|
- 部分功能需要配置相应的环境变量
|
|
- 建议在生产环境使用前进行充分测试
|
|
|
|
---
|
|
|
|
*这是一个高度专业化的内部工具集,主要服务于金融科技公司的开发和运维团队。* |