yukong/PROJECT.MD

53 lines
2.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# 项目分析报告 (PROJECT.MD)
## 1. 项目概述
本项目旨在构建一个管理大疆机场DJI Dock及大疆行业无人机的平台。当前目录包含官方提供的“上云 API” (Cloud API) 前后端 Demo采用前后端分离架构。
## 2. 目录结构
* `Cloud-API/`: 后端服务代码。
* `Cloud-API-Web/`: 前端 Web 应用代码。
## 3. 技术栈详细分析
### 3.1 后端 (Cloud-API)
* **开发语言**: Java (必须 JDK 11+)。
* **核心框架**: Spring Boot 2.7.12。
* **构建工具**: Maven。
* **模块结构**:
* `cloud-sdk`: 封装与大疆设备交互的核心 SDK 逻辑。
* `sample`: 业务逻辑实现示例。
* **关键依赖**:
* `spring-integration-mqtt`: 用于 MQTT 协议通信(设备控制与状态上报的核心)。
* MySQL Connector (隐含): 用于数据持久化。
* **数据存储**:
* **MySQL**: 关系型数据库 (版本 8.0.26+),初始化脚本位于 `sql/cloud_sample.sql`
* **Redis**: 缓存服务 (版本 6.2+)。
* **消息中间件**:
* **EMQX**: MQTT Broker (版本 4.4.0),用于处理高并发的设备消息。
### 3.2 前端 (Cloud-API-Web)
* **核心框架**: Vue 3 (v3.2.26)。
* **开发语言**: TypeScript (v4.5.4)。
* **构建工具**: Vite (v2.4.0)。
* **UI 组件库**: Ant Design Vue (v2.2.8)。
* **状态管理**: Vuex (v4.0.2)。
* **路由管理**: Vue Router (v4)。
* **关键功能库**:
* `@amap/amap-jsapi-loader`: 高德地图 API用于地图展示和航线规划。
* `agora-rtc-sdk-ng`: 声网 RTC SDK推测用于无人机实时图传或语音对讲。
* `mqtt`: 前端 MQTT 客户端。
* `axios`: HTTP 请求库。
* **样式**: SCSS (Sass)。
## 4. 环境依赖总结
要运行此项目,需要准备以下环境:
1. **服务器**: Linux (推荐 Ubuntu 16.04+)。
2. **Java 环境**: OpenJDK 11 或更高版本。
3. **Node.js**: v17.8 (前端构建)。
4. **数据库**: MySQL 8.0.26+。
5. **缓存**: Redis 6.2+。
6. **MQTT Broker**: EMQX 4.4.0。
7. **Web 服务器**: Nginx 1.20.2 (用于部署前端静态资源及反向代理)。
8. **地图服务**: 高德地图 API Key。