# springboot+vue图书商城系统 **Repository Path**: servletSpring/Book_mall ## Basic Information - **Project Name**: springboot+vue图书商城系统 - **Description**: 基于springboot+vue开发的图书商城系统。代码简洁规范,功能齐全。后台是基于通用权限模型Rbac模型开发的后台管理。没有任何重度依赖,任何人都可以运行跑起来,持久层使用mybatisplus,并却内置完成了我们代码生成器。有数据库详细设计文档,对于新手,小白来说是不可多得的学习资料,代码可读性强,而且是一个万能商城脚手架!可更改为任意商城。数据库可以私我QQ:1601078502。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2023-05-02 - **Last Updated**: 2023-05-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 图书商城平台 ## 前言 重要的事说三遍:这是一个万能商城脚手架,拥有这么一个商城脚手架,就可以更改成无数商城。可以根据自己的需求任意变更成任意商城,如果你正在找商城系统开源,不妨试一下它。。 没有任何重度依赖,代码规范简洁完整。 ## 系统架构 后台: SpringBoot + Mybatis-plus + Mybatis + Hutool工具包 + lombok插件 前台:Vue + Vue Router + ELementUI + Axios ## 系统简介 功能:首页推荐(默认根据用户买过的商品进行推荐,如果没买过则根据商品销量推荐)、轮播图管理、商品、订单、购物车、商品评论、商品评论点赞、商品收藏、商品点赞、订单支付、公告。 角色:管理员、商家、用户 后台功能:商品销量统计,用户管理,角色管理,菜单管理,公告管理,日志管理,轮播图管理,商品分类管理,商品管理,订单管理,地址管理。 后台菜单权限:基于RBAC权限模型 ## 个人体会 其实这个代码非常接近企业级别的开发,而且对待小白新手学习springboot+vue的知识是非常使用,就算你看视频学习,看文档学习,都不及有这么一个实际好用,基本上我们的的主流技术都用到了,代码结构层次分明,数据库文档设计规范,代码规范,代码可读性强,我不信小白看不懂这个代码。我们学习开源最主要的目地就是学会别人是怎么写代码,做这个东西是怎么实现的,别人是怎么使用这些技术栈,我们能从里面学习到什么内容。我相信搞懂这个项目,springboot vue对你来说应该就能轻松上手了,看再多的项目都不如一个经典好用的项目。如果你喜欢这个商城就给一个星星。备注来意(数据库+源码有偿,白嫖党勿扰。如有需要可加作者QQ:1601078502) ## 运行环境 JDK:1.8 Node: 12.13.1 数据库:Mysql5.7 + 浏览器:Chrome 需要自己安装JDK、Node、Mysql、 IDEA 、Navicat等软件, ## 部署教程 ## 演示图片 ![输入图片说明](c827f9e9a3e3bde88f2235e3d99d3fc.png) ![输入图片说明](b895d0ee0ff05c9c3e4403ab68c6cd5.png) ![输入图片说明](eb2095f4eb964b54420dd62927d15da.png) ![输入图片说明](b857bfa92394bfd4aa75010b74624c1.png) ![输入图片说明](29b20ff5a167a03b58a9e43aa3870f3.png) ### 后台 - 下载idea、jdk1.8、mysql5.7+ - 使用idea打开项目x-mall文件夹里的end ![](https://www.hualigs.cn/image/60a28e279ea37.jpg) - 导入项目的maven依赖 ![](https://www.hualigs.cn/image/60a28ed768280.jpg) - 启动数据库,新建数据库x-mall ![](https://www.hualigs.cn/image/60a28f3e62204.jpg) - 导入sql脚本 `x-mall.sql` ![](https://www.hualigs.cn/image/60a28f5e1747f.jpg) - 配置项目的数据库连接: ![](https://www.hualigs.cn/image/60a28fdbc1060.jpg) - 点击启动按钮启动后台服务 ![image-20210517234819044](C:\Users\xqnode\AppData\Roaming\Typora\typora-user-images\image-20210517234819044.png) - 当你看到这个界面,说明启动成功了 ![](https://www.hualigs.cn/image/60a29060d131c.jpg) 服务端口:**9999**,可以自己修改`application.yml`文件进行配置 ### 前台 - 使用idea或vscode、hbuildx打开项目front - 配置npm源为国内镜像,否则下载会很慢(必须先下载安装好node) ``` npm config set registry https://registry.npm.taobao.org ``` - 执行`npm i`命令进行依赖的安装 ``` npm i ``` - 执行`npm run serve` 运行项目 ``` npm run serve ``` ## 数据库设计 ### 用户表 | 名称 | 类型 | 长度 | 默认值 | 注释 | | --------- | ------- | ---- | ---------------- | ------ | | id | bigint | 20 | NOT NULL(自增) | 主键 | | username | varchar | 255 | NOT NULL | 用户名 | | nick_name | varchar | 255 | NULL | 昵称 | | password | varchar | 255 | NOT NULL | 密码 | | sex | varchar | 1 | NULL | 性别 | | age | int | 11 | NULL | 年龄 | | address | varchar | 500 | NULL | 地址 | | email | varchar | 255 | NULL | 邮箱 | | phone | varchar | 255 | NULL | 电话 | | avatar | varchar | 255 | NULL | 头像 | | role | varchar | 255 | NULL | 角色 | ### 角色表 | 名称 | 类型 | 长度 | 默认值 | 注释 | | ----------- | ------- | ---- | ---------------- | -------- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | name | varchar | 255 | NULL | 名称 | | description | varchar | 255 | NULL | 描述 | | permission | varchar | 255 | NULL | 菜单列表 | ### 菜单表 | 名称 | 类型 | 长度 | 默认值 | 注释 | | ----------- | ------- | ---- | ---------------- | ---- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | name | varchar | 255 | NULL | 名称 | | description | varchar | 255 | NULL | 描述 | | path | varchar | 255 | NULL | 路径 | | icon | varchar | 255 | NULL | 图标 | ### 公告表 | 名称 | 类型 | 长度 | 默认值 | 注释 | | ------- | ------- | ---- | ---------------- | -------- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | title | varchar | 255 | NULL | 名称 | | content | varchar | 255 | NULL | 内容 | | time | varchar | 255 | NULL | 发布时间 | ### 日志表 | 名称 | 类型 | 长度 | 默认值 | 注释 | | ------- | ------- | ---- | ---------------- | -------- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | content | varchar | 255 | NULL | 操作内容 | | time | varchar | 255 | NULL | 操作时间 | | user | varchar | 255 | NULL | 操作人 | | ip | varchar | 255 | NULL | 操作人ip | ### 轮播图 | 名称 | 类型 | 长度 | 默认值 | 注释 | | ---- | ------- | ---- | ---------------- | ---- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | img | varchar | 255 | 图片 | | | url | varchar | 20 | 关联链接 | | ### 商品分类 | 名称 | 类型 | 长度 | 默认值 | 注释 | | ---- | ------- | ---- | ---------------- | ---- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | name | varchar | 255 | NULL | 名称 | | no | varchar | 255 | NULL | 编号 | ### 商品详情 | 名称 | 类型 | 长度 | 默认值 | 注释 | | ----------- | ------- | ---- | ---------------- | -------- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | name | varchar | 255 | NULL | 名称 | | description | varchar | 1000 | NULL | 描述 | | no | varchar | 255 | NULL | 编号 | | price | decimal | 10,2 | 0.00 | 原价 | | discount | double | 10,2 | 1 | 折扣 | | store | int | 11 | 0 | 库存 | | praise | int | 11 | 0 | 点赞数 | | sales | int | 11 | 0 | 销量 | | category_id | bigint | 20 | NULL | 分类id | | imgs | varchar | 255 | NULL | 图片地址 | | create_time | varchar | 255 | NULL | 创建时间 | ### 商品评论 | 名称 | 类型 | 长度 | 默认值 | 注释 | | ----------- | ------- | ---- | ---------------- | -------- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | content | varchar | 1000 | NULL | 内容 | | username | varchar | 255 | NULL | 评价人 | | avatar | varchar | 255 | NULL | 头像 | | parent_id | bigint | 20 | NULL | 父id | | foreign_id | bigint | 20 | NOT NULL | 关联id | | type | varchar | 255 | NOT NULL | 模块 | | create_time | varchar | 255 | NULL | 创建时间 | ### 订单 | 名称 | 类型 | 长度 | 默认值 | 注释 | | ------------ | ------- | ---- | ---------------- | -------- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | order_no | varchar | 20 | NULL | 订单编号 | | total_price | decimal | 10,2 | NULL | 总价 | | user_id | bigint | 0 | NULL | 下单人id | | link_user | varchar | 255 | NULL | 联系人 | | link_phone | varchar | 255 | NULL | 联系电话 | | link_address | varchar | 255 | NULL | 送货地址 | | state | varchar | 255 | '未付款' | 状态 | | create_time | varchar | 255 | NULL | 创建时间 | ### 订单商品关联表 | 名称 | 类型 | 长度 | 默认值 | 注释 | | -------- | ------ | ---- | ---------------- | -------- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | goods_id | bigint | 20 | NOT NULL | 商品id | | order_id | bigint | 20 | NOT NULL | 订单id | | count | int | 11 | NOT NULL | 商品数量 | ### 购物车 | 名称 | 类型 | 长度 | 默认值 | 注释 | | -------- | ------ | ---- | ---------------- | -------- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | goods_id | bigint | 20 | NOT NULL | 商品id | | user_id | bigint | 20 | NOT NULL | 用户id | | count | int | 11 | NOT NULL | 商品数量 | ### 收货地址 | 名称 | 类型 | 长度 | 默认值 | 注释 | | ------------ | ------- | ---- | ---------------- | -------------- | | id | bigint | 20 | NOT NULL(自增) | 主键 | | link_user | varchar | 255 | NULL | 联系人 | | link_address | varchar | 255 | NULL | 联系地址 | | link_phone | varchar | 255 | NULLNULL | 联系人联系方式 |