基于SpringBoot的社区团购平台
·
项目简介
社区团购平台是一套面向社区居民的在线拼团购物系统,支持用户浏览商品、发起或参与团购活动、购物车下单、收货地址管理及订单跟踪,同时提供完整的管理后台,供管理员对商品、活动、订单、用户及公告进行统一管理。
核心功能
用户端
| 功能 | 说明 |
|---|---|
| 注册 / 登录 | 账号密码注册,Token 鉴权登录 |
| 商品浏览 | 按分类筛选商品,查看商品详情及当前团购活动 |
| 购物车 | 添加/修改/删除购物车商品,支持批量勾选下单 |
| 提交订单 | 选择收货地址,一键生成订单 |
| 收货地址 | 新增、编辑、删除地址,支持设为默认地址 |
| 我的订单 | 查看历史订单及订单状态 |
| 平台公告 | 首页展示最新平台公告 |
管理端
| 功能 | 说明 |
|---|---|
| 数据概览 | Dashboard 展示用户数、商品数、订单数等核心指标 |
| 用户管理 | 查询用户列表,启用/禁用账号 |
| 分类管理 | 新增、编辑、删除商品分类 |
| 商品管理 | 新增、编辑商品,上传封面图,上下架管理 |
| 团购活动 | 创建团购活动,绑定商品,设置团购价与成团人数 |
| 订单管理 | 查看全部订单,手动更新订单状态 |
| 公告管理 | 发布、编辑、删除平台公告 |
技术栈
后端
| 技术 | 版本 | 说明 |
|---|---|---|
| Java | 1.8 | 开发语言 |
| Spring Boot | 2.7.18 | 核心框架 |
| MyBatis | 2.3.1 | ORM 持久层 |
| MySQL | 8.x | 关系型数据库 |
| Token 鉴权 | 自实现 | 基于请求头的轻量 Token 方案 |
前端
| 技术 | 版本 | 说明 |
|---|---|---|
| Vue | 2.7.16 | 前端框架 |
| Vue Router | 3.6.5 | 路由管理 |
| Axios | 1.7.2 | HTTP 请求库 |
| Vue CLI | 5.0.8 | 脚手架与构建工具 |
项目结构
c217/ ├── backend/ # Spring Boot 后端 │ ├── src/main/java/com/community/groupbuy/ │ │ ├── GroupBuyApplication.java │ │ ├── common/ # 通用工具:Token、鉴权拦截器、全局异常等 │ │ ├── config/ # Spring MVC 配置(CORS、拦截器注册) │ │ ├── controller/ # REST 接口层(Admin / User / Public / Auth) │ │ ├── dto/ # 请求参数对象 │ │ ├── entity/ # 数据库实体 │ │ ├── mapper/ # MyBatis Mapper 接口 │ │ └── service/ # 业务逻辑层 │ └── src/main/resources/ │ └── application.yml # 配置文件 ├── frontend/ # Vue 2 前端 │ ├── src/ │ │ ├── api/ # 接口请求封装 │ │ ├── components/ # 公共组件(布局、弹窗) │ │ ├── router/ # 路由配置 │ │ ├── styles/ # 全局样式 │ │ └── views/ │ │ ├── admin/ # 管理后台页面 │ │ └── user/ # 用户端页面 │ └── vue.config.js # 开发代理配置 └── sql/ ├── community_group_buy.sql # 建库建表 + 基础数据 └── community_group_buy_rich_data.sql # 丰富演示数据(需先执行上面的脚本)
数据库设计
数据库名:community_group_buy
| 表名 | 说明 |
|---|---|
sys_user |
系统用户(含管理员与普通用户,role 字段区分) |
category |
商品分类 |
product |
商品(含分类、价格、库存、封面图) |
group_activity |
团购活动(绑定商品,含团购价、成团人数、有效期) |
cart_item |
购物车(用户 + 商品唯一约束) |
user_address |
用户收货地址(支持多地址、默认地址) |
group_order |
订单主表(含收货人快照、订单状态) |
group_order_item |
订单明细(含商品名称快照、成交价) |
announcement |
平台公告(含草稿/已发布状态) |
启动教程
环境准备
-
JDK 1.8
-
Maven 3.6+
-
Node.js 16+
-
MySQL 8.x
数据库初始化
-
启动 MySQL,在客户端执行:
source /path/to/sql/community_group_buy.sql
-
如需导入演示数据,再执行:
source /path/to/sql/community_group_buy_rich_data.sql
后端启动
-
打开
backend/src/main/resources/application.yml,按实际情况修改数据库用户名和密码:
spring: datasource: username: root password: root
-
在
backend/目录下执行:
mvn spring-boot:run
服务启动后监听 8080 端口。
前端启动
在 frontend/ 目录下执行:
npm install npm run serve
浏览器访问 http://localhost:8081
默认账号
| 账号 | 密码 | 角色 |
|---|---|---|
| admin | 123456 | 管理员 |
| user01 | 123456 | 普通用户 |
开发作者
-
作者:Jay
-
定制联系:vx
Jay8059 -
开发日期:2026 年












更多推荐


所有评论(0)