Spring Cloud-Config远程连接

spring:

profiles: dev

application:

name: springcloud-config-dev


spring:

profiles: test

application:

name: springcloud-config-test

现在我们要通过远程访问这个配置文件:

访问:http://localhost:3344/application-test.yml

意思是访问拿到文件为application下profiles为test的信息。

可以发现成功拿到信息了,由于我们在配置文件中激活的是dev环境,所以这里active显示的是被激活环境的名字。

访问:http://localhost:3344/application-dev.yml

而且我们的访问格式也是可以有多种:

/{

application}/{

profile}[/{

label}]

label:代表我们仓库的分支。

例如:

访问:http://localhost:3344/application/dev/master

/{

application}-{

profile}.yml

访问:http://localhost:3344/application-dev.yml

/{

label}/{

application}-{

profile}.yml

访问:http://localhost:3344/master/application-dev.yml

同理对于properties文件也有以下几种

/{

application}-{

profile}.properties

/{

label}/{

application}-{

profile}.properties

4、搭建客户端springcloud-config-client

================================

4.1  准备工作


(1)编写一个config-client.yml添加到我们的远程仓库中

config-client.yml:

spring:

profiles:

active: dev


server:

port: 8201

spring:

profiles: dev

application:

name: springcloud-provider-blog

eureka:

client:

service-url:

defaultZone: http://localhost:7001/eureka/


server:

port: 8202

spring:

profiles: test

application:

name: springcloud-provider-blog

eureka:

client:

service-url:

defaultZone: http://localhost:7001/eureka/

(2)上传到远程仓库

在指定文件夹打开Git窗口

依次输入以下命令

cd  文件所在文件夹

添加

git add .

查看是否添加成功

git status

提交到本地

git commit -m “提交信息”

提交到远程仓库

git push origin master

查看仓库是否有我们的文件:

4.2  建立目录


4.3  导入依赖


org.springframework.cloud

spring-cloud-starter-config

2.1.1.RELEASE

org.springframework.boot

spring-boot-starter-web

2.4.5

4.4  编写配置文件


application.yml:

#用户级配置application

spring:

application:

name: springcloud-config-client-3355

bootstrap.yml:

#系统级配置bootstrap

spring:

cloud:

config:

#http://localhost:3344/config-client-dev/master

uri: http://localhost:3344

name: config-client

profile: dev

label: master

分析:

bootstrap.yml 是系统级别的配置

application.yml 是用户级别的配置

我们的客户端去连接到我们的服务端3344,而我们的服务端已经连接到了远程仓库,就这样通过这样的间接连接从而拿到客户端的配置文件。

4.5  编写ConfigClientController


我们通过这个Controller判断是否拿到了我们的远程仓库的配置。

package com.yixin.springcloud.controller;

import org.springframework.beans.factory.annotation.Value;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

@RestController

public class ConfigClientController {

@Value(“${spring.application.name}”)

private String applicationName;

@Value(“${eureka.client.service-url.defaultZone}”)

private String eurekaServer;

@Value(“${server.port}”)

private String port;

@RequestMapping(“/config”)

public String getConfig(){

return “applicationName=”+applicationName

+“,eurekaServer=”+eurekaServer

  • “,port=”+port

;

}

}

4.6  编写启动类


package com.yixin.springcloud;

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication

public class ConfigClient {

public static void main(String[] args) {

SpringApplication.run(ConfigClient.class,args);

}

}

4.7  测试


依次启动:

服务端:springcloud-config-server-3344

客户端:springcloud-config-client

a、测试服务端是否正常连接到仓库

访问:http://localhost:3344/master/config-client-dev.yml

b、测试客户端是否能够拿到配置文件的信息

由于我们客户端配置文件中访问的是dev,所以其端口是:8201

访问:http://localhost:8201/config

出现以下界面就说明测试成功了!

如果我们客户端激活的是test,那么就应该访问8202端口:

#系统级配置bootstrap

spring:

cloud:

config:

#http://localhost:3344/config-client-dev/master

uri: http://localhost:3344

name: config-client

profile: test

label: master

重启,访问:http://localhost:8202/config
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

面试题总结

其它面试题(springboot、mybatis、并发、java中高级面试总结等)

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!
796)]

[外链图片转存中…(img-YCPQh7Yu-1711817707797)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

面试题总结

其它面试题(springboot、mybatis、并发、java中高级面试总结等)

[外链图片转存中…(img-yXUu0TLk-1711817707797)]

[外链图片转存中…(img-GcOGA8G6-1711817707798)]

[外链图片转存中…(img-wmqEbUs5-1711817707798)]

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!

  • 16
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
`spring-cloud-alibaba-dependencies`是一个Maven BOM(Bill of Materials),包含了Spring Cloud Alibaba的所有依赖版本。通过引入`spring-cloud-alibaba-dependencies`,可以简化Spring Cloud Alibaba项目的依赖管理。它提供了以下依赖: - `spring-cloud-alibaba-dependencies`:Spring Cloud Alibaba版本管理器 - `spring-cloud-starter-alibaba-nacos-discovery`:Nacos服务发现 - `spring-cloud-starter-alibaba-nacos-config`:Nacos配置中心 - `spring-cloud-starter-alibaba-sentinel`:Sentinel限流熔断 - `spring-cloud-starter-alibaba-seata`:Seata分布式事务 - `spring-cloud-starter-alibaba-rocketmq`:RocketMQ消息队列 - `spring-cloud-starter-alibaba-dubbo`:Dubbo远程调用 使用`spring-cloud-alibaba-dependencies`需要在`pom.xml`文件中引入如下配置: ```xml <dependencyManagement> <dependencies> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>2.2.1.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> ``` 引入该依赖后,其他Spring Cloud Alibaba组件的依赖版本就可以省略了。例如,使用Nacos作为服务发现和配置中心,只需要引入以下依赖: ```xml <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency> ``` Spring Cloud Alibaba会自动使用`spring-cloud-alibaba-dependencies`中定义的版本。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值