- 重构前端导入和组件结构,优化代码组织 - 添加Java后端基础框架和API实现 - 修复类型定义和接口兼容性问题 - 新增测试页面和工具函数 - 优化国际化支持和错误处理 - 更新依赖配置和构建脚本 新增Java后端模块: - 实现基础认证、订单、支付等服务 - 添加Swagger API文档支持 - 配置数据库连接和缓存 - 实现国际化消息处理 - 添加安全过滤器和限流控制
3.7 KiB
3.7 KiB
项目概览
1. 项目简介
Crawlful Hub 是一个基于 Spring Boot 3.x 的后端服务,用于管理商品、订单、支付、物流等业务流程。本项目是从原有的 Node.js 后端平移而来,保持了与原系统的 API 兼容性,同时提供了更强大的性能和可扩展性。
2. 技术栈
- 框架: Spring Boot 3.2.0
- 语言: Java 17
- 数据库: MySQL 8.0
- 缓存: Redis
- 认证: JWT
- 构建工具: Maven
- API 文档: Springdoc OpenAPI
- 日志系统: Logback
- 测试: JUnit 5
3. 核心功能
- 用户认证与授权: 基于 JWT 的身份验证和基于角色的访问控制
- 商品管理: 商品的创建、查询、更新和删除
- 订单管理: 订单的创建、查询、更新和状态管理
- 支付管理: 支付的创建、查询、更新和状态管理
- 物流管理: 物流的创建、查询、更新和状态管理
- 系统监控: 系统健康状态、性能指标、服务状态等
- 告警管理: 系统告警的创建、查询、更新和处理
- 审计日志: 系统操作的审计记录
- 配置管理: 系统配置的管理
- 数据管理: 数据的导入、导出和处理
- 报表生成: 系统报表的生成
4. 项目结构
serverjava/
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── crawlful/
│ │ │ └── hub/
│ │ │ ├── api/ # API 控制器
│ │ │ ├── config/ # 系统配置
│ │ │ ├── exception/ # 异常处理
│ │ │ ├── model/ # 数据模型
│ │ │ ├── service/ # 业务逻辑
│ │ │ ├── util/ # 工具类
│ │ │ └── Application.java # 应用入口
│ │ └── resources/
│ │ ├── db/ # 数据库迁移脚本
│ │ ├── i18n/ # 国际化资源
│ │ ├── application.yml # 应用配置
│ │ └── logback.xml # 日志配置
│ └── test/ # 测试代码
├── docs/ # 项目文档
├── README.md # 项目说明
├── index.md # 项目索引
└── pom.xml # Maven 配置
5. API 兼容性
本项目保持了与原 Node.js 后端的 API 兼容性,确保前端和客户端代码无需修改即可正常工作。API 路径、参数和返回格式都与原系统保持一致。
6. 性能优化
- 数据库连接池: 使用 HikariCP 优化数据库连接管理
- 缓存: 使用 Redis 缓存高频访问数据
- 分页查询: 实现分页查询,避免一次性加载大量数据
- 索引优化: 为数据库表添加适当的索引,提高查询性能
7. 安全增强
- CSRF 保护: 实现 CSRF 令牌验证
- 速率限制: 限制 API 请求频率,防止恶意请求
- 密码加密: 使用 BCrypt 加密用户密码
- JWT 认证: 使用 JWT 进行身份验证,确保 API 安全
8. 国际化支持
本项目支持国际化,提供了英文和中文的资源文件,可以根据请求的 Accept-Language 头自动切换语言。
9. 监控与告警
本项目实现了系统监控和告警功能,可以实时监控系统的健康状态、性能指标和服务状态,并在异常情况下生成告警。
10. 部署与运维
本项目使用 Maven 构建,可以部署到任何支持 Java 17 的环境中。详细的部署方法请参考部署文档。