# rd-easy-boot **Repository Path**: zyy110/rd-easy-boot ## Basic Information - **Project Name**: rd-easy-boot - **Description**: 一个基于 Spring Boot 3.x 的多模块后端脚手架项目,采用主流技术栈和最佳实践。 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-02-13 - **Last Updated**: 2025-03-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # RD Easy Server 一个基于 Spring Boot 3.x 的多模块后端脚手架项目,采用主流技术栈和最佳实践。 ## 技术栈 ### 基础框架 - JDK 21 - Spring Boot 3.2.3 - Maven 3.9.x ### 数据库相关 - MySQL 8.0 - MyBatis-Flex 1.8.3 (新一代 MyBatis 增强框架) - HikariCP 5.1.0 (高性能数据库连接池) ### 日志系统 - Logback (日志实现) - SLF4J (日志门面) ## 项目结构 ![输入图片说明](image.png) ### 模块说明 #### rd-easy-server 前端 API 接口模块,面向 C 端用户,包含: - 用户注册/登录 - 用户信息管理 - 业务功能接口 - APP 接口 - 小程序接口 - 第三方登录集成 - 短信服务集成 #### rd-easy-admin 后台管理模块,面向系统管理员,包含: - 系统用户管理 - 角色权限管理 - 系统配置管理 - 运营数据管理 - 日志查看 - 监控面板 #### rd-easy-common 公共功能模块,包含: - 全局异常处理 - 通用响应封装 - 工具类 - 常量定义 - 公共配置 - 安全框架配置 - 缓存配置 - 消息队列配置 #### rd-easy-model 数据模型模块,包含: - 数据库实体类 - DTO(数据传输对象) - VO(视图对象) - 枚举类 - 常量类 ## 项目特性 ### 1. 统一响应处理 - 统一的响应格式 - 全局异常处理 - 详细的错误码系统 ### 2. 数据库设计 - 采用 MyBatis-Flex 作为 ORM 框架 - 支持多数据源配置 - 内置数据库连接池(HikariCP) ### 3. 日志管理 - 分环境日志配置 - 统一的日志格式 - 按日期滚动日志文件 ### 4. 多环境支持 - 开发环境(dev) - 测试环境(test) - 预发布环境(pre) - 生产环境(prod) ### 5. 安全特性 - JWT 令牌认证 - 接口签名验证 - 防 XSS 攻击 - SQL 注入防护 - 接口限流 - 防重放攻击 ### 6. 缓存支持 - Redis 缓存 - 本地缓存 - 多级缓存 ### 7. API 文档 - apifox 接口文档 - 接口版本控制 - 在线调试功能 ## 端口规划 - rd-easy-server: 8090 (C端接口) - rd-easy-admin: 8091 (管理后台接口) ## 项目启动顺序 1. 启动基础服务 - MySQL - Redis(如果使用) - RabbitMQ(如果使用) 2. 启动业务服务 ```bash # 启动 C 端接口服务 cd rd-easy-server mvn spring-boot:run -Dspring.profiles.active=dev # 启动管理后台服务 cd rd-easy-admin mvn spring-boot:run -Dspring.profiles.active=dev ``` ## 接口规范 ### C 端接口 (rd-easy-server) - 接口前缀:/api/v1 - 版本控制:在 URL 中体现版本号 - 示例: ``` # 用户登录 POST /api/v1/user/login # 获取用户信息 GET /api/v1/user/info ``` ### 管理后台接口 (rd-easy-admin) - 接口前缀:/admin/api - 示例: ``` # 管理员登录 POST /admin/api/login # 用户管理 GET /admin/api/users ```