(二)Gateway开发教程之SpringCloud集成过程

前情回顾


上一篇文章,我们分享了Gateway的基本介绍和主要特性,同时对Gateway有了基本的认识,有了这个基础,我们就可以进行初步的学习了。

今天我们就要来初步学习一下SpringCloud中如何集成Gateway网关组件。


SpringCloud集成Gateway


注:本次使用IDEA进行项目的创建、使用、运行等。


创建一个maven项目


首先让我们来创建一个maven项目,


引入gateway相关jar包

<!--gateway-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>

如上xml信息,加入至pom.xml中即可,当然需要提前指定好SpringCloud的版本才行,如下代码。

<dependencyManagement>
    <dependencies>
        <!--SpringCloud-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>Hoxton.SR9</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>


引入nacos相关jar包


然后引入Nacos相关的jar包,这里我们在之前的文章提到过了,就不多说了。

<!--nacos-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>


修改gateway项目配置文件


配置文件是重中之重,如下代码:

server:
  port: 80
  tomcat:
    uri-encoding: utf-8
  servlet:
    context-path: /

spring:
  application:
    name: demo-gateway
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848
    gateway:
      enabled: true
      discovery:
        locator:
          enabled: true
          lower-case-service-id: true
      routes:
        - id: demo_route
          uri: http://www.baidu.com
          predicates:
            - Path=/baidu/**
          filters:
            - StripPrefix=1

运行项目


让我们编写好Application相关类,启动项目。


访问链接进行验证


启动完成后,让我们访问http://127.0.0.1/baidu/1


验证结果


随后我们会发现,页面会直接跳转至百度页面,这也就是网关路由生效了,到此Gateway已经初步集成完毕了。


总结


今天同大家分享了Gateway的初步集成,在项目中想必大家也有了一些感想。

如果大家目前正在使用Gateway组件的话,也可以分享一下你使用的经验;


如果没有,那么希望大家可以多思考一下Gateway基础功能的妙用,也可以与其他软件或者组件进行对比一下。

相信会有更深的理解。


上一篇:hbase源码系列(十三)缓存机制MemStore与Block Cache


下一篇:小程序中全局共享数据的方法