22de3ced839c82038ad9c0e616201899fb62da51
健身房管理系统 POC
项目简介
本项目是健身房管理系统的概念验证(POC),采用响应式架构(Spring WebFlux + R2DBC)实现,旨在验证技术方案的可行性和性能指标。
技术栈
- 框架: Spring Boot 3.2.3
- 响应式Web: Spring WebFlux
- 响应式数据访问: Spring Data R2DBC
- 数据库: PostgreSQL 16.x
- 数据库驱动: R2DBC PostgreSQL 1.0.5.RELEASE
- 对象映射: MapStruct 1.5.5.Final
- 代码简化: Lombok 1.18.30
- API文档: SpringDoc OpenAPI 2.3.0
- 测试: JUnit 5, Reactor Test, Testcontainers
项目结构
gym-manage/
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/gym/manage/
│ │ │ ├── api/ # API层
│ │ │ ├── application/ # 应用层
│ │ │ ├── domain/ # 领域层
│ │ │ ├── infrastructure/ # 基础设施层
│ │ │ └── common/ # 公共模块
│ │ └── resources/
│ │ ├── application.yml
│ │ └── schema.sql
│ └── test/
│ └── java/
└── pom.xml
快速开始
前置条件
- JDK 17+
- Maven 3.9+
- PostgreSQL 16+
数据库准备
CREATE DATABASE gym_manage;
运行项目
mvn clean install
mvn spring-boot:run
访问API文档
- Swagger UI: http://localhost:8080/swagger-ui.html
- OpenAPI JSON: http://localhost:8080/v3/api-docs
核心模块
会员模块
- 会员注册、查询、更新
- 会员卡管理
预约模块
- 团课预约
- 私教预约
- 时段管理
签到模块
- 扫码签到
- 签到记录查询
权益模块
- 权益管理
- 权益扣减
订阅模块
- 模块订阅
- 计费管理
营销模块
- 营销活动管理
- 推荐奖励
数据分析模块
- 统计报表
- 数据概览
性能目标
- 并发连接数: ≥ 1000
- API响应时间(P99): < 500ms
- 吞吐量(QPS): ≥ 3000
- 内存占用: < 1GB
- CPU利用率: < 60%
测试
mvn test
文档
许可证
MIT License
联系方式
- 技术负责人: 张翔
- 邮箱: zhangxiang@example.com
Description
Languages
Java
52.9%
Python
22.9%
TypeScript
16.4%
Vue
3.6%
Shell
2.4%
Other
1.8%