JH2️⃣JDL②部署单体应用、微服务
1、单体应用
生成一个
monolith应用,需求如下
- 应用名称:myMono
- Java 包名:indi.jaywee.mono
- 身份验证类型:JWT
- 数据库:MySQL,不使用缓存
- 项目构建工具:Maven
- 前端框架:Vue
1.1、创建 JDL 文件
-
开启 JDL-studio,输入配置内容。
application { config { applicationType monolith baseName myMono packageName indi.jaywee.mono authenticationType jwt databaseType sql prodDatabaseType mysql devDatabaseType mysql cacheProvider no buildTool maven clientFramework vue } } -
下载 JDL 文件

-
默认文件名
jhipster-jdl,建议重命名为应用程序名称,以便标识。
1.2、生成应用
-
创建一个文件夹用于生成应用程序,切换到该文件夹。

-
使用
Xftp上传 JDL 文件。
-
执行
jhipster指令,等待应用程序生成。-
jhipster jdl myMono.jdl -

-
1.3、数据库配置
-
为应用程序创建数据库
CREATE DATABASE 数据库名; -
修改配置文件
-
路径:
项目文件夹\src\main\resources\config\application-dev.yml -
修改内容:datasource 的 URL、账号密码
-
保存,确认配置成功修改(可在 Linux 中通过
cat命令查看)
-
1.4、运行
-
创建一个 Screen,切换到应用程序所在文件夹,运行应用。
screen -S jh-mono cd /tmp/jhipster/myMono ./mvnw -
运行成功:注意此处的 localhost 表示的是服务器的主机号。

-
访问应用程序:可正常访问。

2、实践:微服务(❗)
生成微服务集合,需求如下
Registry Center:从 Github 下载。microservice- 应用名称:myMicro
- 服务端口号:8081
- Java 包名:indi.jaywee.micro
- 身份验证类型:JWT
- 数据库:MySQL,不使用缓存
- 项目构建工具:Maven
- 国际化:英文、中文
gateway- 应用名称:myGateway
- 服务端口号:8080
- Java 包名:indi.jaywee.gateway
- 身份验证类型:JWT
- 数据库:MySQL,不使用缓存
- 项目构建工具:Maven
- 前端框架:Vue
- 国际化:英文、中文
2.1、注册中心
以 GitHub 克隆方式安装
Registry Center
-
创建应用程序目录,用于生产微服务应用。
mkdir -p /tmp/jhipster/myMicro cd /tmp/jhipster/myMicro -
将 GitHub 项目克隆到当前目录。
git clone https://github.com/jhipster/jhipster-registry
2.2、微服务应用 & 网关
2.2.1、创建 JDL 文件
单个 JDL 文件可声明多个 application,
生成应用时会自动为不同 application 创建子文件夹。
-
在 JDL-studio 输入配置内容
application { config { applicationType microservice baseName myMicro serverPort 8081 packageName indi.jaywee.micro authenticationType jwt databaseType sql prodDatabaseType mysql devDatabaseType mysql cacheProvider no buildTool maven nativeLanguage en languages [zh-cn] } } application { config { applicationType gateway baseName myGateway serverPort 8080 packageName indi.jaywee.gateway authenticationType jwt databaseType sql prodDatabaseType mysql devDatabaseType mysql cacheProvider no buildTool maven clientFramework vue nativeLanguage en languages [zh-cn] } } -
下载 JDL 文件:默认文件名
jhipster-jdl,建议重命名为应用程序名称,以便标识。
2.2.2、生成应用
-
切换到应用程序文件夹。
cd /tmp/jhipster/myMicro -
使用
Xftp上传 JDL 文件。
-
执行
jhipster指令,等待应用程序生成。-
jhipster jdl myMicro.jdl -

-
应用程序会在子文件夹中生成。

-
2.2.3、数据库配置
-
为应用程序创建数据库(微服务应用和网关共用)
CREATE DATABASE 数据库名; -
修改配置文件:微服务应用、网关都需修改。
-
路径:
项目文件夹\src\main\resources\config\application-dev.yml -
修改内容
-
微服务应用:datasource 的 URL、账号密码

-
网关应用:
liquibase的 URL,r2dbc的 URL、用户名、密码
-
-
保存,确认配置成功修改(可在 Linux 中通过
cat命令查看)
-
2.3、运行
-
步骤:启动注册中心(8761)→ 启动应用(8081) → 启动网关(8081)
-
方式:通过
screen分别开启 3 个会话,以便管理。# 列出所有会话 screen -ls # 新建会话 screen -S 会话名 # 删除会话 screen -S 会话名 -X quit # 退出会话(挂起):快捷键 Ctrl+A+D screen -d 会话名 # 回到会话 screen -r 会话名
2.3.1、启动
启动 Registry Center
-
创建一个会话:用于启动注册中心,创建后自动进入会话。
screen -S jh-registry -
切换到
Registry center所在目录,执行./mvnw启动项目。 -
启动成功,输出 URL 信息
-
访问 Registry center
-
服务器 IP 地址:云服务器公网 IP、虚拟机静态 IP
-
默认端口号:8761
-
默认账号密码:admin
-
-
挂起当前会话
# 快捷键 Ctrl+A+D screen -d jh-registry
按照以上方式,分别启动 myMicro 和 myGateway
2.3.2、访问
服务启动后即可访问,如下所示
-
Registry Center:已注册 3 个示例
-
myMicro:成功访问
-
myGateway:成功访问

浙公网安备 33010602011771号