From 704aca34b42b3e67e09ab74e550637d9c2830554 Mon Sep 17 00:00:00 2001 From: gitadmin Date: Mon, 6 Apr 2026 21:17:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0README=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 134 ++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 104 insertions(+), 30 deletions(-) diff --git a/README.md b/README.md index 1dd7229..e40a6da 100644 --- a/README.md +++ b/README.md @@ -1,37 +1,111 @@ -# ERP Java 微服务后端 +# ERP Java 微服务 -## 架构概述 -基于Spring Cloud Alibaba的微服务架构,逐步替换现有PHP系统。 +## 项目简介 + +ERP系统的Java微服务版本,采用Spring Cloud微服务架构。 ## 技术栈 -- **Java 17** + **Spring Boot 3.x** -- **Spring Cloud 2023.x** + **Spring Cloud Alibaba 2023.x** -- **MySQL 8.0** + **Redis 7.x** -- **Nacos 2.x** (服务注册与配置中心) -- **Spring Cloud Gateway** (API网关) -- **Seata** (分布式事务) -- **RocketMQ** (消息队列) -- **MyBatis Plus** (数据访问层) -## 服务划分 -### 核心业务服务 -1. `user-service` - 用户服务 -2. `product-service` - 商品服务 -3. `order-service` - 订单服务 -4. `inventory-service` - 库存服务 -5. `finance-service` - 财务服务 +- **框架**: Spring Boot 3.x, Spring Cloud 2023 +- **数据库**: MySQL 8.0, Redis 7 +- **消息队列**: RocketMQ +- **服务注册**: Nacos +- **ORM**: MyBatis Plus, JPA +- **构建工具**: Maven 3.8+ +- **Java版本**: JDK 17+ -### 支撑服务 -6. `admin-service` - 总控服务(租户、套餐管理) -7. `file-service` - 文件服务 -8. `notification-service` - 通知服务 +## 项目结构 -### 基础设施 -9. `api-gateway` - API网关 -10. `auth-service` - 认证服务 +``` +├── common/ # 公共模块 +│ ├── common-config/ # 配置模块 +│ ├── common-core/ # 核心实体 +│ ├── common-mybatis/ # MyBatis增强 +│ ├── common-redis/ # Redis封装 +│ └── common-web/ # Web增强 +├── gateway/ # 网关服务 +├── services/ # 业务服务 +│ ├── user-service/ # 用户服务 +│ ├── order-service/ # 订单服务 +│ ├── product-service/ # 商品服务 +│ ├── inventory-service/ # 库存服务 +│ ├── finance-service/ # 财务服务 +│ └── ... +├── nacos/ # Nacos配置 +├── rocketmq/ # RocketMQ配置 +├── seata/ # Seata分布式事务 +└── deploy/ # 部署脚本 +``` -## 开发原则 -1. **逐步迁移** - 新功能用Java开发,旧功能逐步迁移 -2. **数据同步** - PHP和Java系统数据双向同步 -3. **接口兼容** - 保持API接口兼容性 -4. **灰度发布** - 新服务逐步替换旧服务 \ No newline at end of file +## 快速开始 + +### 环境要求 + +- JDK 17+ +- Maven 3.8+ +- MySQL 8.0 +- Redis 7 +- Nacos (可选) +- RocketMQ (可选) + +### 构建 + +```bash +# 全量构建 +mvn clean package -DskipTests + +# 单服务构建 +cd services/user-service +mvn clean package -DskipTests +``` + +### 配置 + +修改 `services/*/src/main/resources/application.yml` 中的数据库和Redis配置。 + +### 运行 + +```bash +# 运行单个服务 +java -jar services/user-service/target/user-service.jar + +# 使用Docker运行 +docker-compose up -d +``` + +## 服务列表 + +| 服务 | 端口 | 说明 | +|------|------|------| +| user-service | 8082 | 用户认证服务 | +| order-service | 8084 | 订单服务 | +| product-service | 8083 | 商品服务 | +| inventory-service | 8085 | 库存服务 | +| tenant-service | 8086 | 租户服务 | +| permission-service | 8087 | 权限服务 | +| dashboard-service | 8088 | 仪表盘服务 | + +## API文档 + +启动服务后访问: http://localhost:服务端口/swagger-ui.html + +## 开发指南 + +### 新增服务 + +1. 在 `services/` 下创建新服务模块 +2. 参考已有服务的pom.xml配置 +3. 添加到根pom.xml的modules中 +4. 创建数据库表和实体类 +5. 实现Controller, Service, Repository层 + +### 代码规范 + +- 遵循阿里巴巴Java开发规范 +- 使用Lombok简化代码 +- 所有API返回统一格式: ApiResponse +- 分页查询使用PageResponse + +## 许可证 + +私有项目,仅限内部使用