# waimai-java **Repository Path**: yaominyuan/waimai-java ## Basic Information - **Project Name**: waimai-java - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-26 - **Last Updated**: 2025-10-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 外卖系统 (Waimai System) ## 项目简介 这是一个基于Spring Boot的外卖管理系统单体应用,采用标准的分层架构设计,支持用户管理、订单处理等核心业务功能。 ## 技术栈 - **框架**: Spring Boot 3.5.7 - **数据库**: MySQL - **ORM**: MyBatis - **工具**: Lombok - **Java版本**: JDK 24 ## 项目结构 ``` com.ming/ ├── WaimaiApplication.java # 应用程序启动类 ├── controller/ # 控制器层 - 处理HTTP请求 │ ├── UserController.java # 用户控制器 │ └── OrderController.java # 订单控制器 ├── service/ # 服务层 - 业务逻辑接口 │ ├── UserService.java # 用户服务接口 │ ├── OrderService.java # 订单服务接口 │ └── impl/ # 服务实现类 │ └── UserServiceImpl.java # 用户服务实现 ├── repository/ # 数据访问层 - MyBatis Mapper │ ├── UserRepository.java # 用户数据访问 │ └── OrderRepository.java # 订单数据访问 ├── entity/ # 实体类 - 对应数据库表 │ ├── User.java # 用户实体 │ └── Order.java # 订单实体 ├── dto/ # 数据传输对象 │ ├── UserLoginDTO.java # 用户登录DTO │ └── UserVO.java # 用户视图对象(VO) ├── config/ # 配置类 │ ├── WebConfig.java # Web配置 │ ├── MybatisConfig.java # MyBatis配置 │ ├── LogAspect.java # 日志切面 │ └── AuthInterceptor.java # 认证拦截器 ├── util/ # 工具类 │ ├── StringUtils.java # 字符串工具类 │ ├── DateUtils.java # 日期工具类 │ └── JwtUtil.java # JWT工具类 ├── exception/ # 异常处理 │ ├── BusinessException.java # 业务异常 │ └── GlobalExceptionHandler.java # 全局异常处理器 └── common/ # 通用类 ├── ApiConstant.java # API常量 └── OrderStatus.java # 订单状态枚举 ``` ## 分层架构说明 ### 1. Controller 层 (控制器层) - **职责**: 处理HTTP请求,参数验证,调用Service层 - **注解**: `@RestController`, `@RequestMapping` - **返回**: 统一的响应格式 ### 2. Service 层 (服务层) - **职责**: 业务逻辑处理,事务管理 - **模式**: 接口 + 实现类 - **注解**: `@Service`, `@Transactional` ### 3. Repository 层 (数据访问层) - **职责**: 数据库操作,SQL映射 - **技术**: MyBatis - **注解**: `@Mapper`, `@Select`, `@Insert`, `@Update`, `@Delete` ### 4. Entity 层 (实体层) - **职责**: 数据库表映射 - **工具**: Lombok - **注解**: `@Data`, `@Entity` ### 5. DTO 层 (数据传输对象) - **职责**: 数据传输和转换 - **分类**: - DTO: 接收前端参数 - VO: 返回前端数据 ## 核心功能模块 ### 用户模块 - 用户注册/登录 - 用户信息管理 - 权限控制 ### 订单模块 - 订单创建 - 订单状态管理 - 订单查询 ## 快速开始 ### 环境要求 - JDK 21+ - Maven 3.6+ - MySQL 8.0+ ### 安装步骤 1. **克隆项目** ```bash git clone [repository-url] cd waimai ``` 2. **配置数据库** ```properties # application.properties spring.datasource.url=jdbc:mysql://localhost:3306/waimai spring.datasource.username=root spring.datasource.password=password ``` 3. **启动应用** ```bash mvn spring-boot:run ``` 4. **访问应用** - 应用地址: http://localhost:8080 - 健康检查: http://localhost:8080/actuator/health ## 开发规范 ### 代码规范 - 使用阿里巴巴Java开发手册 - 统一使用Lombok简化代码 - 遵循RESTful API设计规范 ### Git提交规范 - feat: 新功能 - fix: 修复bug - docs: 文档更新 - style: 代码格式调整 - refactor: 重构 - test: 测试相关 ## 部署说明 ### 本地部署 ```bash mvn clean package java -jar target/waimai-0.0.1-SNAPSHOT.jar ``` ### Docker部署 ```bash docker build -t waimai . docker run -p 8080:8080 waimai ``` ## 贡献指南 1. Fork 项目 2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 打开 Pull Request ## 许可证 本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情 ## 联系方式 - 项目维护者: [Your Name] - 邮箱: [your.email@example.com] - 项目链接: [https://github.com/yourusername/waimai]