/rikky-takeaway

悦刻外卖源于瑞吉外卖黑马项目开发,由Spring Boot + Mybatis Plus构建的一个基于网页的网上外卖订餐系统,相比于原课程,悦刻外卖添加了完善的注释、部分代码优化和改进了整体结构,希望能帮助到每一位处于困惑中的同学。

Primary LanguageJavaScriptApache License 2.0Apache-2.0

悦刻外卖-readme

Contributors Forks Stargazers Issues Apache License


Logo

悦刻外卖

吃得完有奖励,吃不完有惩罚
最新版本

View Code · Report Bug · Request Feature

内容目录
  1. 关于本项目
  2. 开始构建
  3. 用途
  4. 贡献
  5. License
  6. 联系
  7. Acknowledgments

关于本项目

这是一个较为完整功能的版本,实现了一个外卖平台基本的后台人员菜品套餐管理和前台点餐功能。但是暂不包含后续配送功能, 本代码遵循Apache-2.0 license,可以作为学习用途使用,亦可做于其它用途。

该项目Java版本为jdk8,主要技术有Spring Boot + Mybatis Plus,数据库使用MySQL,使用Redis缓存优化查询。 这算是我接触的第一个Spring Boot项目,作为学习的一个记录,我将每次的提交都在此仓库中,学习素材取自 黑马程序员Java项目实战《瑞吉外卖》,轻松掌握springboot + mybatis plus开发核心技术的真java实战项目。 相比较原教程,我做了代码优化和格式上的改进,对于短信验证,我修改成了邮箱验证的登陆方式。考虑到复杂性,项目也暂未使用主从分离设计和前后端分离, 可能存在前后端登陆越界的问题。但依然是正在学习这个项目的同学的一个参考,希望大家都能顺利完成这个项目。

(back to top)

构建于

  • JDk8
  • Spring
  • Spring Boot
  • MySQL
  • Mybatis Plus
  • Redis
  • Vue
  • ElementUI
  • IntelliJ IDEA

(back to top)

开始构建

对于熟悉Spring Boot项目的同学,以下说明略看即可,以下说明为了保证每个人都能顺利构建项目,所以会有些冗余。

所需环境

  • JDK8 本项目由JDK8构建,请在运行本项目前确保您的电脑已安装JDK8,若您使用的是IntelliJ IDEA,您可以很方便的在Project Structure中配置JDK版本。
  • MySQL 本项目使用MySQL数据库,请在运行本项目前确保您可以顺利连接到MySQL数据库。
  • Redis 本项目使用Redis缓存,请在运行本项目前确保您可以顺利连接到Redis数据库,如果实在不愿意使用Redis,请下载v1.0版本 的代码, 或在本项目的release/basic-functionality 分支中下载代码,该分支为本项目的基础功能分支,不包含Redis缓存功能。 Windows用户使用和配置可以参考:在 windows 上安装 Redis
  • Maven 本项目使用Maven构建,初次打开项目时,IntelliJ IDEA会自动下载Maven依赖,若您的IntelliJ IDEA没有识别到Maven,请右键项目,选择Add Framework Support,选择Maven,然后点击OK。 若在Maven下载依赖时出现问题(大部分国内用户都会出现这个问题),为了一劳永逸,建议您在IntelliJ IDEA的File->Settings->Build,Execution,Deployment->Build Tools->Maven中配置Maven。 通过在您电脑用户目录下的.m2文件夹中找到settings.xml文件(若没有则创建一个该名的文件),在<Settings>内部添加以下内容:
<settings>
  <mirrors>
      <mirror>
          <id>aliyunmaven</id>
          <mirrorOf>*</mirrorOf>
          <name>阿里云公共仓库</name>
          <url>https://maven.aliyun.com/repository/public</url>
      </mirror>
  </mirrors>
</settings>

再在该设置目录下的User Settings File中选择刚刚创建的settings.xml文件,勾选Override,点击OK即可,再次重启IntelliJ IDEA,Maven依赖就会自动下载了。 若pom.xml依然爆红,尝试再次加载。

进行配置

  • 数据库配置

    无论你使用什么数据库管理工具,请在数据库中创建一个容易被记住的数据库名,例如rikky_takeaway,然后在导入本仓库的sql 文件夹中的db.sql文件。 之后需要回到本项目的src/main/resources目录下,找到application.yml文件,补充数据库的连接信息。

  • Redis配置

    当你已经安装好Redis并且可以顺利连接到Redis数据库时,需要回到本项目的src/main/resources目录下,找到application.yml 文件,补充Redis的连接信息。

  • 邮箱配置

    该邮箱作为发送验证码的用途,在这里我建议使用QQ邮箱,因为QQ邮箱的SMTP服务是免费的,而且不需要进行额外的配置。SMTP服务的配置信息可以在QQ邮箱的设置中找到, 登陆你的QQ邮箱,点击左上角的设置按钮,选择设置,选择账户,找到开启POP3/SMTP服务,经过一系列的确认后, 你将获得一个授权码,这个授权码就是你的邮箱密码password,你可以在application.yml中的邮箱配置信息中配置它。

  • 文件存储位置配置

    该系统由于需要存储用户上传的图片,所以需要配置一个文件存储的位置,建议在IntelliJ IDEA中右键img文件夹,Copy Path ,选择复制绝对路径, 然后在application.yml的文件存储位置配置信息中配置它。

自此,配置基本完成,你可以顺利在本地运行项目了,通过运行在src/main/java/com/rikky目录下的RikkyApplication.java即可启动本项目。 后台登陆默认账号为admin,密码为123456。 前台用户界面为手机适配,电脑直接打开可能会出现排版错乱,所以请使用手机浏览器打开, 或者使用开发者工具模拟手机浏览器打开。使用手机访问需要使得你的电脑和手机处于同一局域网 下,获取电脑ip地址教程 (Linux/Macos用户自己查)。 然后在手机浏览器中输入你的电脑的IP地址:端口号即可访问。 而电脑推荐使用Chrome内核的浏览器,打开方法为在浏览界面按下F12, 然后点击Toggle device toolbar(通常情况下快捷键为ctrl + shift + m),选择iPhone 6/7/8,即可模拟手机浏览器打开。

对于希望在服务器上运行,同理修改配置文件(注意文件存储位置配置信息)后在IntelliJ IDEA终端输入:

mvn package -Dmaven.test.skip=true

即可完成打包,云服务器部署请自行利用互联网搜索。

用途

本项目是一个外卖系统,用于学习 Spring Boot 的开发,功能较为受限,但是也有一些功能,例如:

  • 用户注册
  • 用户登录
  • 用户地址管理
  • 用户订单管理
  • 用户购物车
  • 员工管理
  • 菜品管理
  • 菜品分类管理
  • 套餐管理
  • 员工订单管理

这算是我接触的第一个Spring Boot项目,作为学习的一个记录,我将每次的提交都在此仓库中,学习素材取自 黑马程序员Java项目实战《瑞吉外卖》,轻松掌握springboot + mybatis plus开发核心技术的真java实战项目。 相比较原教程,我做了代码优化和格式上的改进,对于短信验证,我修改成了邮箱验证的登陆方式。考虑到复杂性,项目也暂未使用主从分离设计和前后端分离, 可能存在前后端登陆越界的问题。但依然是正在学习这个项目的同学的一个参考,你遇到的坑,可能是我已经在这里踩过的,但无论如何,都希望大家都能顺利完成这个项目。

(back to top)

贡献

贡献是使开源社区成为一个学习、激励和创造的奇妙场所的原因。我们非常感谢您的任何贡献。

如果你有什么建议可以让这个项目变得更好,请fork该版本并创建一个PR。 如果在学习中遇到了一些困难,你也可以在这里提交一个issue,我会尽快回复你。 如果它对你有帮助,请star💫它,再次感谢!

关于如何贡献的更多信息,请查看CONTRIBUTING.md

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the ApacheApache-2.0 license. See LICENSE.txt for more information.

(back to top)

联系

riverify - @riverify - https://github.com/riverify

项目链接: 🔗https://github.com/riverify/rikky-takeaway

(back to top)

Acknowledgments

以下资源亦可帮助学习:

(back to top)

End

(back to top)