目录
- 前言
 - 示例
 - 创建一个服务提供者
 - 创建网关
 
- 创建common子项目
 
前言
Spring Cloud Gateway 是一个基于 Spring Boot 的非阻塞 API 网关服务,它提供了动态路由、请求断言、过滤器等功能。
以下是关于 Spring Cloud Gateway 的示例:
示例
创建一个服务提供者
- 新建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列表";
    }
}
 
- 在resource中的配置文件中加入配置
 
server.port=8009
spring.application.name=my_provider1
#注册中心的地址
eureka.client.service-url.defaultZone=http://localhost:8001/eureka/
 
- 修改启动类,如下:
 
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);
    }
}
 
- 打开注册中心

 
创建网关
- 新建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
 
- 启动服务

 
创建common子项目





















