1:Intellij 新建项目 spring-cloud-gateway
2:pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>cn.tigee</groupId><artifactId>spring-cloud-gateway</artifactId><version>1.0-SNAPSHOT</version><properties><java.version>1.8</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-parent</artifactId><version>2023.0.3</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><dependencies><!-- 引入 Spring Cloud Gateway 相关依赖,使用它作为网关,并实现对其的自动配置 --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency>
<!-- <dependency>-->
<!-- <groupId>org.springframework.boot</groupId>-->
<!-- <artifactId>spring-boot-starter-web</artifactId>-->
<!-- </dependency>--></dependencies>
</project>
3:application.yml
server:port: 7101servlet:context-path: /
spring:application:name: spring-cloud-gatewaycloud:gateway:discovery:locator:enabled: true #开启Eureka服务发现lower-case-service-id: true
eureka:client:service-url:defaultZone: ${EUREKA_URI:http://localhost:8761/eureka}instance:prefer-ip-address: true
4:启动类
package tigee;import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;@SpringBootApplication
@EnableDiscoveryClient
public class ApplicationMain {static final Logger logger = LoggerFactory.getLogger(ApplicationMain.class);public static void main(String[] args) {logger.debug("服务启动..start......");SpringApplication.run(ApplicationMain.class, args);logger.debug("服务启动..end......");}}
3:启动看 注册中心
4:请求接口
http://localhost:7101/user-service/hello?name=12
5:user-service 动多个端口
再请求 localhost:7101/user-service/hello?name=12