微服务项目整合与测试

一:微服务项目整合
1:微服务项目结构预览
本项目模拟的是一个简单的商城管理系统,其项目整体结构如下:
本项目通过一个名为microservice-mallmanagement的maven父项目构建了四个子项目

microservice-eureka-server:用于服务注册发现
microservice-gateway-zuul:用于API网关
microservice-orderservice:用于订单管理服务
microservice-userservice:用于用户管理服务


2:微服务项目功能介绍
(1):microservice-eureka-server(Eureka注册中心)
该子项目使用了Spring Cloud的组件Eureka,主要用于搭建一个服务注册中心,microservice-gataway-zuul,microservice-orderservice和microservice-userservice都将通过配置注册到该注册中心。
其对应的配置文件application.yml的具体内容


(2):microservice-gataway-zuul(zuul API网关)
该子项目使用了Spring Cloud的组件zuul, 主要作为其他微服务项目的API网关,来实现其他微服务接口的动态代理。microservice-orderservice和microservice-userservice微服务都可以使用zuul网关服务进行代理请求。其对应的配置文件application.yml的具体内容:


(3):microservice-orderservice(订单管理微服务)
该子项目就是一个使用传统的spring Boot框架开发的订单管理微服务项目,主要用于进行商城订单管理,并提供有关订单管理的restful风格的API接口方法
其对应的配置文件application.yml的具体内容


该项目对应的控制类OrderController的具体内容


(4):microservice-userservice(用户管理微服务)
该项目也是一个传统的spring Boot框架开发的用户管理微服务项目,主要用于进行商城用户管理,并提供有关用户管理的restful风格的API接口方法
其对应的配置文件application.yml的具体内容


该项目对应的控制器类UserController的具体内容


3:微服务项目的启动和测试
通过MySql客户端连接工具执行SQL脚本文件来初始化数据库和表,SQL脚本
完成全部子项目的启动并运行成功后,通过地址http://localhost:8761/,即可访问Eureka服务注册中心
启动成功后,即可对系统的功能进行测试,具体执行步骤如下:
(1):测试接口方法。

(2):测试API网关服务


二:接口可视化工具—Swaager-UI
1:Swagger-UI使用方法
(1):下载Swagger-UI项目
从GitHub上拉取Swaager-UI项目代码
https://github.com/swaager-api/swagger-ui.git
(2):引入Swagger-UI

(3):加入Swagger依赖


(4):编写配置类


2:Swagger-UI使用测试
分别完成微服务项目microservice-userservice和microservice-orderservice与Swagger-UI接口文档工具的整合后,只需要重新启动项目即可查看整合效果

(1):整合测试
重新启动所有整合了Swagger-UI接口文档工具的微服务项目,启动成功后,通过对应的请求路径即可进入测试页面


(2):接口测试
以用户管理API接口测试文档为例,先单击user-controller面板,会展示出接口中的所有方法(项目只有一个GET方法),再单击某个具体的方法会展现出详细信息