微服务项目的整合与测试

微服务项目整合

微服务项目结构预览

本项目模拟的是一个简单的商城管理系统。本项目通过一个名为microservice_mallmanagement的Maven父项目构建了四个子项目:
*microservice-eureka-server:用于服务注册发现
*microservice-gateway-zuul:用于API网关
*microservice-orderservice:用于订单管理服务
*microservice-userservice:用于用户管理服务
其中的microservice-orderservice和microservice-userservice就是我们实际需要开发的微服务项目,也是商城管理项目的核心,而另外的microservice-eureka-server和microservice-gateway-zuul子项目则属于辅助服务。

微服务项目功能介绍

1.microservice-eureka-server(Eureka注册中心)
该子项目使用了Spring Cloud的组件Eureka,主要哟梦雨搭建一个服务注册中心,microservice-gateway-zuul、microservice-orderservice和microservice-userservice都将通过配置注册到注册中心。
其对应的配置文件application.yml的具体内容:
在这里插入图片描述
2.microservice-gateway-zuul(Zuul API网关)
该子项目使用了Spring Cloud的组件Zuul,主要作为其他微服务项目的API网关,来实现其他微服务接口的动态代理。microservice-orderservice和microservice-userservice微服务都可以使用Zuul网关服务代理请求。
其对应的配置文件application.yml的具体内容:
在这里插入图片描述
在这里插入图片描述
3.microservice-orderservice(订单管理微服务)
该子项目就是一个使用系统的Spring Boot框架开发的订单管理微服务项目,主要用于进行商城订单管理,并提供有关订单管理的RESTFUL风格的API接口方法。
其对应的配置文件application.yml的具体内容:
在这里插入图片描述
上述配置文件不仅要注意上线测试时需要修改Eureka注册中心配置,还需要注意MySQL数据库URL的配置。如果MySQL数据库使用非Docker容器方式进行配置,那么MySQL数据库的URL要修改为“MySQL数据库服务的IP+端口”的形式;如果是使用Docker容器启动的MySQL数据库服务,那么MySQL数据库的URL要根据上面的提示修改为“MySQL数据库的服务名称或容器名称+端口号”的形式。
该项目对应的控制类OrderController的具体内容:
在这里插入图片描述
4.microservice-userservice(用户管理微服务)
该子项目也是一个传统的Spring Boot框架开发的用户管理微服务项目,主要用于进行商城用户管理,并提供有关用户管理的RESTFUL风格的API接口方法。
其对应的配置文件application.yml的具体内容:
在这里插入图片描述
该项目对应的控制类UserController的具体内容:
在这里插入图片描述

微服务项目的启动和测试

1.创建一个名为microservice_mallmanagement的数据库,同时在该数据库中分别创建tb_order和tb_user表,并插入了一些初始化数据。
在这里插入图片描述
2.完成全部子项目的启动并运行后,通过地址http://localhost:8761,即可访问Eureka服务注册中心,如图:
在这里插入图片描述
启动成功后,即可对系统的功能进行测试,具体执行步骤如下:
(1)测试接口方法。分别通过microservice-orderservice和microservice-userservice两个微服务项目的地址来访问各自暴露的API接口方法(分别为http://localhost:7900/order/findOrders/1和http://localhost:8030/user/findOrders/shitou)进行测试,效果如图:
在这里插入图片描述
在这里插入图片描述
(2)测试API网关服务。针对上面的microservice-orderservice和microservice-userservice两个微服务项目,可以通过Zuul组件提供的API网关进行对应的接口代理测试(代理访问地址分别为http://localhost:8050/order-service/order/findOrders/1和http://localhost:8050/user-service/user/findOrders/shitou),效果如图:
在这里插入图片描述
在这里插入图片描述
至此,商城管理系统的整合和测试就已经讲解完成。如果读者想要查看整个项目的源码,可以通过GitHub进行下载查看,具体地址为http://github.com/shi469391tou/microservice-mallmanagement.git。

接口可视化工具—Swagger-UI

Swagger-UI使用方法

1.下载Swagger-UI项目
从GitHub上拉取Swagger-UI项目代码,具体地址如下:
http://github.com/swagger-api/swagger-ui.git
2.引入Swagger-UI
找到本地瞎子啊好的Swagger-UI项目,进入项目并找到dist目录,将整个dist目录复制到需要使用Swagger-UI工具项目的resources目录下。
在这里插入图片描述
在这里插入图片描述
3.加入Swagger依赖
在microservice-userservice项目的pom文件中加入Swagger的依赖:
在这里插入图片描述
4.编写配置类
在项目中创建一个Swagger-UI的配置类SwaggerConfiguration,并在该类中修改一些默认显示的API相关信息,其中最主要的是接口路径,编辑后如图:
在这里插入图片描述
在这里插入图片描述

Swagger-UI使用测试

1.整合测试
重新启动所有整合了Swagger-UI接口文档工具的微服务项目,启动成功后,通过对应“服务地址IP+端口+、swagger-ui.html”请求路径即可进入测试页面,效果分别如图:
在这里插入图片描述
在这里插入图片描述
2.接口测试
以用户管理API接口测试文档为例,先单击user-controller面板,会展示出接口中的所有方法(项目只有一个GET方法),再单击某个具体的方法会展示出详细信息,效果如图:
在这里插入图片描述
在上图的标注信息可以很清楚地知道页面各部分信息的作用,在参数信息输入框中填写username的参数值shitou(之前MySQL数据库初始化时插入的数据),然后单击“Try it out!”按钮即可进行测试,结果如图:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值