# aps_demo **Repository Path**: zhuozh666/aps_demo ## Basic Information - **Project Name**: aps_demo - **Description**: aps demo project. - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2025-12-30 - **Last Updated**: 2025-12-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # APS Scaffold 项目脚手架 APS Scaffold 是一个基于 Spring Boot 3.x 的企业级项目脚手架工具,采用 Maven 多模块架构设计,提供开箱即用的企业级开发框架。 ## 🏗️ 项目架构 ``` aps-scaffold/ ├── aps-dependency/ # 依赖管理模块(独立) ├── aps-common/ # 通用实体定义模块 ├── aps-framework/ # 核心框架支持模块 ├── aps-server/ # 服务器启动模块 └── pom.xml # 父项目 POM ``` ## 📦 模块说明 ### 1. aps-dependency(依赖管理) - **类型**: Maven POM 项目 - **作用**: 统一管理所有依赖版本,类似于 `spring-boot-dependencies` - **特点**: 不属于父项目的子模块,独立管理 - **包含**: Spring Boot、数据库、工具类、API文档、验证、日志、测试等依赖 ### 2. aps-common(通用实体) - **类型**: Maven JAR 模块 - **作用**: 业务系统通用实体定义,作为项目的二方库 - **特点**: 父项目的子模块 - **预置内容**: - `Result`: 通用返回结果实体 - `BaseEntity`: 基础实体类(ID、时间、版本等) ### 3. aps-framework(核心框架) - **类型**: Maven JAR 模块 - **作用**: 脚手架的核心,提供通用的框架层支持 - **特点**: 父项目的子模块 - **核心功能**: - Knife4j 接口文档自动生成 - 全局异常处理 - 业务异常定义 ### 4. aps-server(服务器启动) - **类型**: Maven JAR 模块 - **作用**: 单体项目场景下的启动服务,引入其他所有业务模块 - **特点**: 父项目的子模块,包含 Spring Boot 主启动类 - **功能**: 统一启动后端服务 ## 🚀 快速开始 ### 环境要求 - JDK 17+ - Maven 3.6+ - Spring Boot 3.2.0 ### 构建项目 ```bash # 清理并编译所有模块 mvn clean compile # 安装到本地仓库 mvn clean install # 跳过测试安装 mvn clean install -DskipTests ``` ### 启动应用 ```bash # 方式1: 使用 Maven cd aps-server mvn spring-boot:run # 方式2: 使用 Java cd aps-server java -jar target/aps-server-1.0.0-SNAPSHOT.jar # 方式3: 使用 VS Code # 按 F5 启动调试 ``` ### 访问地址 - **应用**: http://localhost:8080 - **API文档**: http://localhost:8080/doc.html - **健康检查**: http://localhost:8080/actuator/health ## 🔧 开发指南 ### 添加新模块 1. 在根目录创建新模块目录 2. 在根 `pom.xml` 的 `` 中添加新模块 3. 创建新模块的 `pom.xml`,设置 `parent` 为 `aps-scaffold` 4. 在 `aps-server` 中添加对新模块的依赖 ### 包命名规范 - **aps-common**: `com.aps.common.*` - **aps-framework**: `com.aps.framework.*` - **aps-server**: `com.aps.server.*` - **业务模块**: `com.aps.{moduleName}.*` ### 依赖管理 - 所有依赖版本在 `aps-dependency` 模块中统一管理 - 子模块引用依赖时无需指定版本号 - 新增依赖时先在 `aps-dependency` 中定义版本 ## 📚 技术栈 ### 核心框架 - **Spring Boot**: 3.2.0 - **Java**: 17 - **Maven**: 3.6+ ### 开发工具 - **Lombok**: 代码生成 - **MapStruct**: 对象映射 - **Validation**: 参数验证 ### API文档 - **Knife4j**: 4.3.0 - **OpenAPI 3**: 规范支持 ### 监控管理 - **Spring Boot Actuator**: 健康检查 - **Micrometer**: 指标收集 - **Prometheus**: 监控集成 ### 数据库支持 - **MySQL**: 8.0.33 - **MyBatis Plus**: 3.5.3.1 - **Druid**: 1.2.18 ### 缓存支持 - **Redis**: 3.2.0 - **Caffeine**: 3.1.8 ### 消息队列 - **RabbitMQ**: 3.2.0 - **Kafka**: 3.6.0 ## 🐛 常见问题 ### 1. 编译失败 ```bash # 确保 aps-common 已安装到本地仓库 mvn clean install -pl aps-common # 然后编译 aps-framework mvn clean install -pl aps-framework # 最后编译 aps-server mvn clean install -pl aps-server ``` ### 2. 依赖找不到 - 检查 `aps-dependency` 模块是否包含所需依赖 - 确认依赖版本号是否正确 - 验证 Maven 本地仓库是否正常 ### 3. 启动失败 - 检查端口 8080 是否被占用 - 确认配置文件 `application.yml` 是否正确 - 查看启动日志中的错误信息 ## 📄 许可证 本项目采用 MIT 许可证,详见 [LICENSE](LICENSE) 文件。 ## 🤝 贡献指南 欢迎提交 Issue 和 Pull Request 来改进这个项目! ## 📞 联系方式 - **项目地址**: https://github.com/aps-scaffold - **邮箱**: aps@example.com - **团队**: APS Team