健身网l;l;j
技术栈:
- Spring Boot:作为基础框架。
- Vue:实现前后端分离的项目架构
项目类型 概念 前端页面位置 通信方式 优点 缺点 不分离 前端页面由后端(SpringBoot)渲染并返回(如 Thymeleaf、JSP) /resources/templates
或/static
无需接口,后端直接返回 HTML 开发部署简单,适合快速开发 页面耦合后端,体验较差,不适合复杂交互 前后端分离 前端和后端完全独立开发、部署,前端用 Vue、React 等构建 前端项目单独存在,用 npm run build
打包后部署Vue 调用 SpringBoot 接口(RESTful) 高度解耦,用户体验好,维护性强 配置复杂,需要跨域、接口文档、部署更复杂 - MyBatis/MyBatis-Plus:用于数据库操作。
- Lombok:简化代码。
- Spring MVC:处理 HTTP 请求。
- AOP:支持横切关注点。
- 关系型数据库:存储数据。
功能模块
模块名称 | 核心功能 |
---|---|
用户模块 | 登录、注册、身份认证、用户信息管理 |
健身卡模块 | 健身卡购买、续费、秒杀抢购、订单管理 |
场馆模块 | 健身场馆信息展示、地图定位、预约查看等 |
社交模块 | 朋友圈动态、评论、点赞、关注、消息通知 |
管理后台 | 用户管理、订单管理、健身卡配置、秒杀活动配置、数据分析 |
目录结构
com/
└── workout/└── demo/├── DemoApplication.java├── config/├── controller/├── entity/├── mapper/└── service/
- DemoApplication.java这是 Spring Boot 项目的主启动类,通常包含 main 方法,用于启动整个应用。
- config/配置类目录。一般用于存放与项目配置相关的 Java 类,比如安全配置、跨域配置、MyBatis 配置等。
- controller/控制器层,负责处理前端请求(如 REST API),与前端进行数据交互。
- entity/实体类目录。用于定义与数据库表对应的 Java 类(POJO),通常包含属性和 getter/setter。
- mapper/持久层接口目录。一般用于存放 MyBatis 的 Mapper 接口,负责数据库的增删改查操作。
- service/业务逻辑层。用于编写具体的业务逻辑代码,通常会调用 mapper 层进行数据操作。
数据库
设计用户、健身卡、订单、场馆、社交动态等多张核心业务表
创建Vue前端
下载node.js和Vue,验证这两个版本