Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PetStore|宠物商城课程设计

4 人课程设计。公开版本已移除真实凭据和真实门店联系方式;仅用于学习、作品展示与代码复盘。

项目简介

PetStore 是一个前后端分离的宠物商品商城课程项目,包含商品浏览、登录、购物车、结算、订单、个人中心、门店、视频和 AI 助手等功能。

项目分为三个端:

  • backend/:Spring Boot REST API。
  • frontend/:Vue 3 Web 管理/用户端。
  • mobile/:UniApp 移动端。

我的贡献边界

本项目为 4 人小组协作。我独立完成 UniApp 移动端 APP:项目基础结构、商品列表与详情、购物车与结算、订单管理与个人中心,以及 AI 助手、视频、门店地图页面接入、UI 适配和接口联调。

后端订单、JWT、数据持久化等模块属于小组项目代码。我会在作品展示和面试中如实说明该分工,不将团队成果包装为个人独立全栈项目。

技术栈

层级 技术
后端 Java 17、Spring Boot 3.2.5、Spring Web、Spring Data JPA、Validation、JWT
主业务数据 SQLite、Hibernate Community Dialects
扩展模块 MongoDB 地理信息、Redis 相关模块
Web Vue 3、Vite、Vue Router、Pinia、Axios、Element Plus
移动端 UniApp、Vue 3、Vite、Pinia

核心业务链路

商品浏览 -> 加入购物车 -> 结算 -> 后端校验用户/商品/库存
-> 创建订单与明细 -> 扣减库存 -> 清理购物车 -> 返回订单结果

订单服务使用 Spring @Transactional 处理订单、明细、库存和购物车写操作,避免部分成功。课程项目不应被表述为完整高并发秒杀或真实支付系统。

本地运行前提

  • JDK 17+
  • Maven 3.9+
  • Node.js 18+
  • MongoDB、Redis:相关模块启用时需要
  • UniApp/HBuilderX 或对应的 UniApp 开发环境:运行移动端时需要

1. 配置环境变量

复制 .env.example 内容到自己的本机环境、IDE 运行配置或部署平台密钥管理中。该项目不会自动读取 .env

至少设置:

$env:JWT_SECRET = "replace-with-your-own-long-random-secret"

可选功能再设置 ZHIPU_API_KEYGITEE_CLIENT_IDGITEE_CLIENT_SECRETGITEE_REDIRECT_URI。不要把真实值提交 Git。 默认不创建固定用户名/密码的演示账号;仅在可丢弃的本机数据库中,才显式设置 PETSHOP_SEED_DEMO_USERS=true。 移动端真机或部署环境通过 mobile/.env.example 中的 VITE_API_BASE_URL 配置服务地址;不要提交个人内网穿透地址。 Web 门店地图需要在 frontend/.env.example 中配置自己的受限高德地图 key 与安全密钥;移动端地图 key 需在本机 UniApp manifest 配置中填写,公开仓库保持为空。

2. 启动后端

Set-Location backend
mvn spring-boot:run

默认服务端口:8080

3. 启动 Web 端

Set-Location frontend
npm install
npm run dev

4. 启动移动端

Set-Location mobile
npm install
npm run dev:h5

移动端 App 打包、真机调试请使用 UniApp 对应工具链。

安全说明

  • 公开仓库只保留虚构门店数据;不包含真实门店电话、地址或可用凭据。
  • application.yml 通过环境变量读取 JWT、AI 与 OAuth 配置。
  • .gitignore 已忽略本机数据库、构建产物和本地密钥配置。
  • 原课程包中的视频素材不随公开仓库发布;如需演示,请仅放入自己拥有发布权的 .mp4 文件。
  • 外部 AI、OAuth、地图与真实支付均不应在没有密钥治理、隐私告知、失败处理和测试时直接部署。

当前边界

本次公开化工作只做源码脱敏和文档整理,未在此操作中安装依赖、调用外部 AI API、连接真实数据库或执行端到端测试。因此不声明性能指标、自动化测试数量或生产部署能力。

公开前检查清单

  • 所有曾出现在配置中的 API/OAuth/JWT 密钥已撤销或轮换。
  • 获得小组成员对公开完整课程源码的同意。
  • 再次运行敏感信息扫描,确认没有密钥、个人数据、本机路径和数据库文件。
  • 实际启动后端、Web 与移动端,补充可复现的截图和运行说明。

About

UniApp pet store mobile app and team course project with Spring Boot, Vue 3, and JWT.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages