一、项目技术栈
本项目采用前后端分离技术。
前端技术:vue3,JavaScript;
后端框架:springboot框架+mybatis-plus;
数据库:MySQL,Redis作为热点数据缓存。
二、项目环境搭建
1、数据库
采用mysql+Navicat Premium 15
序号 | 表名 | 说明 |
1 | employee | 员工表 |
2 | categoty_class | 菜品和套餐分类表(商家自己维护) |
3 | product | 商家信息表 |
4 | dish_flavor | 菜品口味关系表 |
5 | contamer | 用户表(c端) |
6 | address_book | 地址簿表 |
7 | shopping_cart | 购物车表 |
8 | orders | 订单表 |
9 | order_detail | 订单明细表 |
10 | sys_dict_type | 通用数据字典类型表 |
11 | sys_dict_data | 通用数据类型明细表 |
12 | enterprise_process | 商家审核意见表 |
2、Maven项目搭建
后台:springboot 2.7.15 +mybatis-plus +redis+hutool
前端:vue 3 +element-ui+vue-router+vuex+百度地图(坐标定位,位置搜索和显示)
3、创建项目
在Idea中勾选相应的选项,创建springboot项目。
4、导入依赖
<!-- mybatis-plus -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.2</version>
</dependency>
<!-- java常用工具集合 https://www.hutool.cn/ -->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.8.2</version>
</dependency>
<!-- 文档编写工具 -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
<!--可视化的文档页面 swagger-ui-->
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>3.0.2</version>
</dependency>
<!-- 对mybatis扩展的分页框架(支持各种数据库) -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.4.7</version>
</dependency>
<!-- 图片验证框工s具 -->
<dependency>
<groupId>com.github.whvcse</groupId>
<artifactId>easy-captcha</artifactId>
<version>1.6.2</version>
</dependency>
<!-- 对实体类数据有效性的验证框架 -->
<dependency>
<groupId>org.hibernate.validator</groupId>
<artifactId>hibernate-validator</artifactId>
</dependency>
<!--redisson分布式锁 -->
<dependency>
<groupId>org.redisson</groupId>
<artifactId>redisson-spring-boot-starter</artifactId>
<version>3.17.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-aop -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>3.2.1</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>org.springframework.boot</groupId>-->
<!-- <artifactId>spring-boot-starter-data-mongodb</artifactId>-->
<!-- </dependency>-->
<dependency>
<groupId>com.tencentcloudapi</groupId>
<artifactId>tencentcloud-sdk-java</artifactId>
<!-- go to https://search.maven.org/search?q=tencentcloud-sdk-java and get the latest version. -->
<!-- 请到https://search.maven.org/search?q=tencentcloud-sdk-java查询所有版本,最新版本如下 -->
<version>3.1.899</version>
</dependency>
<!-- 腾讯云文件存储SDK -->
<dependency>
<groupId>com.qcloud</groupId>
<artifactId>cos_api</artifactId>
</dependency>
<version>5.6.133</version>
4、配置application.yml文件
#application.yml
server:
port: 8080
spring:
application:
#应用名称 , 可选
name: market_sys
profiles:
# 程序启动,加载-dev开发环境
active: dev
jackson:
time-zone: GMT+8
mvc:
pathmatch:
matching-strategy: ant_path_matcher
以及开发环境配置(application-dev.yml),生产环境配置(application-prod.yml)
5、使用mybatis-plus可视化工具逆向过程
连接数据库,选择所需要的表。这里所选择的是mybatis-plus3,需要的entity,mapper,service包工具会自动创建。
三、前端
基于https://gitee.com/hu-snail/vue3-admin-element-template项目框架进行修改,可进行自行下载。