1. 导入数据库 SQL
首先,需要将课前资料中提供的 hmdp.sql 文件导入到你的 MySQL 数据库中。
- 注意事项:MySQL 的版本需要采用 5.7 及以上版本。
- 核心表结构:导入后你会看到多张表,包括
tb_user(用户表)、tb_shop(商户信息表)、tb_blog(探店笔记表)、tb_voucher(优惠券表)以及tb_voucher_order(优惠券订单表)等,这些表将支撑我们后续所有的核心业务。
2. 认识项目架构模型
在真正动代码前,了解项目的整体架构和请求流转过程非常重要:
- Nginx 层:手机端或浏览器发起请求时,首先会打到 Nginx 服务器。Nginx 在这里起到了多重作用:它可以作为静态资源服务器(实现前后端动静分离),可以基于 Lua 直接绕开 Tomcat 访问 Redis,更重要的是它可以作为负载均衡器,将成千上万的并发流量打散分配到下游的 Tomcat 集群中。
- Tomcat 层:负责处理核心业务逻辑。由于单台 Tomcat 服务器(如4核8G配置)通常只能支撑1000左右的并发,因此面对高并发场景需要部署 Tomcat 集群。
- 数据库层(MySQL & Redis) :Tomcat 处理完请求后需要访问数据。为了防止成千上万的并发直接将 MySQL 数据库的 CPU 和磁盘打满导致崩溃,我们会搭建 MySQL 集群,并且强依赖 Redis 集群来作为缓存,提升访问性能并降低 MySQL 压力。
3. 导入并运行后端项目
- 导入 IDEA:在资料中找到
hm-dianping文件夹,将其复制到你的工作空间,并使用 IDEA 打开工程。 - 修改配置(极其重要) :启动项目前,务必修改
application.yaml配置文件,将其中的 MySQL 和 Redis 地址、密码修改为你自己虚拟机的对应信息。 - 测试运行:启动项目后,在浏览器访问
http://localhost:8081/shop-type/list,如果能看到 JSON 格式的商铺类型数据,则证明后端运行没有问题。
4. 导入并运行前端工程(Nginx)
前端项目是以静态资源形式部署在 Nginx 中的:
- 放置目录:将资料中的
nginx-1.18.0文件夹复制到你电脑的任意目录,确保该目录不包含中文、特殊字符和空格(例如:D:\lesson\nginx-1.18.0)。 - 启动服务:在 nginx 所在的目录下打开一个 CMD 命令行窗口,输入命令:
start nginx.exe。 - 手机模式访问:打开 Chrome 浏览器,在空白页面点击鼠标右键选择“检查”(或按 F12),打开开发者工具后点击“手机模式”图标。然后在地址栏访问
http://127.0.0.1:8080,即可看到黑马点评的移动端页面效果。