【Spring全家桶系列之核心篇 | Spring Cloud】 - 第七章 掌握Gateway核心技术,实现高效路由与转发

avatar
作者
猴君
阅读量:4

目录

前言

Spring Cloud Gateway 是一个基于 Spring Boot 的非阻塞 API 网关服务,它提供了动态路由、请求断言、过滤器等功能。

以下是关于 Spring Cloud Gateway 的示例:

示例

创建一个服务提供者

  1. 新建Module
    在这里插入图片描述在这里插入图片描述在这里插入图片描述dependency选择Spring Web及Eureka Discovery Client。
    在这里插入图片描述2. 打开pom.xml文件,修改如下:
    在这里插入图片描述3. 定义服务
    在src/main/java下面的com.cherry.provider 下创建新的包controller(也可以不创建新的包,在当前provider包下),并新建下面的类:
package com.cherry.provider1.controller;  import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;  @RestController @RequestMapping("product") public class ProductController {     @RequestMapping("list")     public String list(){                  return "这是product列表";     } } 
  1. 在resource中的配置文件中加入配置
server.port=8009 spring.application.name=my_provider1 #注册中心的地址 eureka.client.service-url.defaultZone=http://localhost:8001/eureka/ 
  1. 修改启动类,如下:
package com.cherry.provider1;  import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient;  @SpringBootApplication @EnableEurekaClient public class Provider1Application {     public static void main(String[] args) {                SpringApplication.run(Provider1Application.class, args);     } } 
  1. 打开注册中心
    在这里插入图片描述

创建网关

  1. 新建Module
    在这里插入图片描述在这里插入图片描述在这里插入图片描述2. 修改pom.xml文件
    在这里插入图片描述3. 修改配置文件application.properties,对网关进行配置
server.port=9001 spring.application.name=gateway spring.cloud.gateway.routes[0].id= gateway-service spring.cloud.gateway.routes[0].uri= http://localhost:8002 spring.cloud.gateway.routes[0].predicates[0]= Path=/building/welcome 
  1. 启动服务
    在这里插入图片描述

创建common子项目

在这里插入图片描述在这里插入图片描述

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!