搭建cloud项目以及各个依赖和配置说明(二)

简介: 搭建cloud项目以及各个依赖和配置说明

添加网关模块


右击项目–new–添加module,创建普通的manen项目


网关是cloud项目中所有模块的入口,所以它的配置和普通的配置略有不同。


一、添加依赖:


<dependencies>
        <dependency>
            <!--     gateway 注意 此模块不能引入starter-web       -->
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-gateway</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
    </dependencies>


pring-cloud-starter-alibaba-nacos-discovery是Spring Cloud Alibaba中关于Nacos服务发现的起步依赖。引入它可以让Spring Cloud应用使用Nacos作为服务注册与发现中心。


配置网关的application.yml文件


server:
#  该模块的端口号
  port: 8080
spring:
  application:
#  网关名称
    name: gateway
  profiles:
#指定环境
    active: local
  cloud:
    gateway:
      discovery:
        locator: 
          enabled: true # 让gateway从nacos中获取服务信息
      rotes:
        - id: user_route            #用户模块路由
          uri: lb://test   #test项目注册到nacos的服务名称,
          order: 1
          predicates:
            - Path=/test/**  #路由断言,用于判断请求是否符合转发条件。这里是判断请求路径是否以/test开头,如果是则转发到test服务
    nacos:
      discovery:
        server-addr: nacos地址+端口号 #nacos地址
        namespace: FilterTest


网关入口


@SpringBootApplication
@EnableDiscoveryClient   //服务注册是否可以被发现
public class GateWayApplication {
    public static void main(String[] args) {
        SpringApplication.run(GateWayApplication.class,args);
    }
}


普通模块


普通模块创建和网关模块创建是一样的。


普通模块的配置文件:


server:
  port: 8082
  servlet:
    context-path: /test
spring:
  application:
    name: test
  profiles:
    active: local
  cloud:
    nacos:
      discovery:
        server-addr: nacos地址+端口号 #nacos地址
        namespace: FilterTest


普通模块的pom文件


<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
    </dependencies>


启动类:


@SpringBootApplication
@EnableDiscoveryClient
public class TestApplication {
    public static void main(String[] args) throws UnknownHostException {
        ConfigurableApplicationContext application =SpringApplication.run(TestApplication.class,args);
}


application.yml文件和bootstrap.yml文件的区别


该例子我搭建的cloud项目使用的配置文件使用的是application.yml,这里有一个优先级的问题,bootstrap.yml的优先级要比application.yml的优先级要高,而且一般使用熔断、限流之类的中间件的时候一般使用bootstrap.yml。


总结


本博客文中只是简单的搭建了一个cloud项目,如果在实际开发过程中需要用到其他的组件,在pom文件中引入相关依赖。


最后搭建完毕之后访问此:http://localhost:8080/test/test/TestController/test地址可以访问到自己的项目。需要说明一下,url地址中的第一个“/test”是网关中配置的地址,第二个test是自己模块中的上下文地址。

90ab7ca983f6794f8e2380e83b20de0b_4fc21d30b521482ba52341552cdc6ee0.png


相关文章
|
6月前
|
前端开发 Java 关系型数据库
SpringBoot基于官网构建及项目快速启动
SpringBoot基于官网构建及项目快速启动
340 0
|
消息中间件 JavaScript Dubbo
spring cloud alibaba 组件版本关系 以及 毕业版本依赖关系
spring cloud alibaba 组件版本关系 以及 毕业版本依赖关系
690 0
|
4月前
|
Java 持续交付 Maven
Spring Boot程序的打包与运行:构建高效部署流程
构建高效的Spring Boot部署流程对于保障应用的快速、稳定上线至关重要。通过采用上述策略,您可以确保部署过程的自动化、可靠性和高效性,从而将专注点放在开发上面。无论是通过Maven的生命周期命令进行打包,还是通过容器技术对部署过程进行优化,选择正确的工具与实践是成功实现这一目标的关键。
199 2
|
6月前
|
负载均衡 监控 Java
搭建一个简单的SpringCloud环境
搭建一个简单的SpringCloud环境
47 1
|
JSON Java Nacos
需要在你的项目中引入Nacos的依赖
需要在你的项目中引入Nacos的依赖
487 2
|
6月前
|
Java BI API
JeecgBoot 框架升级 Spring Boot 3.1.5 步骤
总有人问JeecgBoot何时支持jdk17和springboot3,目前官方已经推出了SpringBoot 3分支,大家可以提前下载体验
181 0
|
消息中间件 监控 Java
搭建cloud项目以及各个依赖和配置说明(一)
搭建cloud项目以及各个依赖和配置说明
771 0
|
Java 应用服务中间件 API
解决SpringBoot多模块发布时99%的问题?SpringBoot发布的8个原则和4个问题的解决方案
解决SpringBoot多模块发布时99%的问题?SpringBoot发布的8个原则和4个问题的解决方案
634 0
解决SpringBoot多模块发布时99%的问题?SpringBoot发布的8个原则和4个问题的解决方案
|
Java Spring
Spring 官网无法查看的版本依赖如何查看?
Spring 官网无法查看的版本依赖如何查看?
73 0
|
Java 中间件 Maven
springboot2.0+spring cloud+eureka(分布式项目)项目搭建详细教程(附加源码)
springboot2.0+spring cloud+eureka(分布式项目)项目搭建详细教程(附加源码)
200 0
springboot2.0+spring cloud+eureka(分布式项目)项目搭建详细教程(附加源码)