微服务-01.导入黑马商城

一.微服务

如果我们直接一头扎进微服务的概念中,会一头雾水,我们先将一个单体项目进行拆分。拆分成一个微服务项目,这样会理解的更加深刻。

首先导入项目,

安装MySQL

在课前资料提供好了MySQL的一个目录:

其中有MySQL的配置文件和初始化脚本:

我们将其复制到虚拟机的/root目录。如果/root下已经存在mysql目录则删除旧的,如果不存在则直接复制本地的:

然后创建一个通用网络:

复制代码
docker network create hm-net

使用下面的命令来安装MySQL:

复制代码
docker run -d \
  --name mysql \
  -p 3306:3306 \
  -e TZ=Asia/Shanghai \
  -e MYSQL_ROOT_PASSWORD=123 \
  -v /root/mysql/data:/var/lib/mysql \
  -v /root/mysql/conf:/etc/mysql/conf.d \
  -v /root/mysql/init:/docker-entrypoint-initdb.d \
  --network hm-net\
  mysql

此时,通过命令查看mysql容器:

复制代码
docker ps

如图:

发现mysql容器正常运行。

此时,如果我们使用MySQL的客户端工具连接MySQL,应该能发现已经创建了黑马商城所需要的表:

后端

然后是Java代码,在课前资料提供了一个hmall目录:

将其复制到你的工作空间,然后利用Idea打开。

项目结构如下:

按下ALT + 8键打开services窗口,新增一个启动项:

在弹出窗口中鼠标向下滚动,找到Spring Boot:

点击后应该会在services中出现hmall的启动项:

点击对应按钮,即可实现运行或DEBUG运行。

不过别着急!!

我们还需要对这个启动项做简单配置,在HMallApplication上点击鼠标右键,会弹出窗口,然后选择Edit Configuration

在弹出窗口中配置SpringBoot的启动环境为local:

点击OK配置完成。接下来就可以运行了!

启动完成后,试试看访问下 http://localhost:8080/hi 吧!

前端

在课前资料中还提供了一个hmall-nginx的目录:

其中就是一个nginx程序以及我们的前端代码,直接在windows下将其复制到一个非中文、不包含特殊字符的目录下。然后进入hmall-nginx后,利用cmd启动即可:

复制代码
# 启动nginx
start nginx.exe
# 停止
nginx.exe -s stop
# 重新加载配置
nginx.exe -s reload
# 重启
nginx.exe -s restart

特别注意:

nginx.exe 不要双击启动,而是打开cmd窗口,通过命令行启动。停止的时候也一样要是用命令停止。如果启动失败不要重复启动,而是查看logs目录中的error.log日志,查看是否是端口冲突。如果是端口冲突则自行修改端口解决。

启动后一定要打开任务管理器查看是否启动成功。

启动成功后,访问http://localhost:18080,应该能看到我们的门户页面:

相关推荐
我命由我1234520 小时前
Android 多进程开发 - FileDescriptor、Uri、AIDL 接口定义不能抛出异常
android·java·java-ee·kotlin·android studio·android-studio·android runtime
xyhuix20 小时前
Spring+Quartz实现定时任务的配置方法
java
分享牛20 小时前
Operaton入门到精通22-Operaton 2.0 升级指南:Spring Boot 4 核心变更详解
java·spring boot·后端
jinanmichael20 小时前
SpringBoot 如何调用 WebService 接口
java·spring boot·后端
深蓝轨迹20 小时前
吃透 Spring Boot dataSource与Starter
java·spring boot·笔记·后端
spring29979220 小时前
springboot和springframework版本依赖关系
java·spring boot·后端
小超同学你好20 小时前
Transformer 15: DeepSeek-V2 架构解析:MLA + DeepSeekMoE 与主流架构对比
语言模型·架构·transformer·llama
文公子WGZ20 小时前
将java 21切换成java 25
java·开发语言
一直都在57220 小时前
Java序列化和反序列化
java·开发语言
AI精钢20 小时前
OpenLobster 的优势与劣势:一次面向 OpenClaw 用户的架构审视
java·微服务·架构·ai agent·mcp·openclaw·openlobster