Skip to content

About

仿当当网图书商城:Spring Boot 2.3.1 + MyBatis + MySQL 后端 + Vue 3 + Vite 前端,覆盖图书浏览、分类、购物车、订单、地址等核心电商模块。

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

仿当当网图书商城 dangdang-test

一个基于 Spring Boot + Vue 的全栈电商练手项目,覆盖图书浏览、分类检索、购物车、订单、地址、登录/注册、邮件验证码等核心电商模块。

技术栈

后端

  • Spring Boot 2.3.1.RELEASE
  • MyBatis + Druid 连接池
  • PageHelper 分页插件 1.3.0
  • Lombok / Hutool 工具库
  • JDK 1.8

前端

  • Vue 3 + TypeScript
  • Vite 5 构建工具
  • Pinia 状态管理
  • Vue Router / Bootstrap 5.3

数据库

  • MySQL 8(库名 dangdang-msj,默认端口 3306)

功能模块

  • 图书浏览、分类筛选、按分类分页
  • 关键字搜索(/dangdang/book/search?name=...)
  • 用户注册(含邮箱验证码)+ 登录 / 登出
  • 购物车(基于 Session)
  • 订单提交(下单 → 批量插入订单明细 → 原子扣库存,自动回滚防超卖)
  • 收货地址管理(增删改查 + 默认地址)
  • 模拟支付(7 种支付方式骨架,未对接真实通道)

目录结构

dangdang-test/
├── src/main/java/com/cpx/dangdang/   # 后端代码(controller / service / dao / entity / util)
├── src/main/resources/
│   ├── application.yml               # Spring 配置(敏感信息已脱敏)
│   ├── com/cpx/dang/mapper/          # MyBatis XML
│   ├── static/                       # 前端工程(Vue + Vite)+ 旧版 JSP 前端
│   └── images/book/                  # 图书封面(cXX_X.jpg 等)
├── pom.xml
└── README.md

本地运行

1. 启动 MySQL

确保本地 MySQL 8 在 3306 端口运行,库名 dangdang-msj。

2. 注入真实敏感信息(二选一)

仓库已脱敏 application.yml 里的 QQ 邮箱/授权码/DB 密码,运行前需补充:

方式 A · 环境变量

export DB_PASSWORD=你的MySQL密码
export MAIL_USERNAME=你的QQ邮箱
export MAIL_PASSWORD=你的QQ邮箱授权码

方式 B · src/main/resources/application-local.yml(已在 .gitignore,不进库)

spring:
  datasource:
    password: 你的MySQL密码
mail:
  username: 你的QQ邮箱
  password: 你的QQ邮箱授权码
  from: 你的QQ邮箱

3. 启动后端(端口 8989,context-path /dangdang)

mvn spring-boot:run -o \
  -Dspring-boot.run.jvmArguments="-Dserver.port=8989"

4. 启动前端(端口 5173,已代理 /dangdang → 8989)

cd src/main/resources/static
npm install   # 已带 node_modules 可跳过
npm run dev

浏览器打开 http://localhost:5173 即可。

重要说明

  • 本项目仅作学习/练手用,不含任何真实商品/价格/库存数据(图书初始数据已自包含 202 本)
  • 支付宝/QQ 邮箱为占位配置,未对接真实支付通道,QQ 邮箱需自行填入授权码
  • 本地配置 application-local.yml 已在 .gitignore,不会被推送到 GitHub
  • 旧版 JSP 前端仍保留在 src/main/resources/static/front/,与新版 Vue 前端并存

License

本仓库采用 MIT 协议,仅供学习交流。

About

仿当当网图书商城:Spring Boot 2.3.1 + MyBatis + MySQL 后端 + Vue 3 + Vite 前端,覆盖图书浏览、分类、购物车、订单、地址等核心电商模块。

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages