springcloud-config
SpringCloud-Config
spring cloud config 分为服务端和客户端两部分。
- 服务端:Config Server,配置中心。 独立的微服务应用,用来连接配置服务器并为客户端提供获取配置信息,一般从git上读取配置
- 客户端:Client 连接服务端,获取配置,管理应用资源,在启动时从配置中心加载配置
git配置中心
-
application.yml 服务端
spring: profiles: active: dev --- spring: profiles: dev application: name: springcloud-config-dev --- spring: profiles: test application: name: springcloud-config-test
-
config-client.yml 客户端
spring: profiles: active: dev --- #Eureka配置,服务注册到哪里 server: port: 8201 eureka: client: service-url: defaultZone: http://eureka7003.com:7003/eureka/,http://eureka7002.com:7002/eureka/,http://eureka7001.com:7001/eureka/ #spring配置 spring: profiles: dev application: name: springcloud-provider-dept --- #Eureka配置,服务注册到哪里 server: port: 8202 eureka: client: service-url: defaultZone: http://eureka7003.com:7003/eureka/,http://eureka7002.com:7002/eureka/,http://eureka7001.com:7001/eureka/ #spring配置 spring: profiles: test application: name: springcloud-provider-dept
服务端
-
依赖
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-config-server --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId> <version>2.1.1.RELEASE</version> </dependency> <!--eureka完善监控信息--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> </dependencies>
-
yml配置
server: port: 3344 spring: application: name: springcloud-config-server #连接远程仓库 cloud: config: server: git: uri: https://gitee.com/jin_pengyong/springcloud-config.git #git上项目路径,http,非ssh
-
启动类
@SpringBootApplication @EnableConfigServer public class Config_server_3344 { public static void main(String[] args) { SpringApplication.run(Config_server_3344.class, args); } }
测试:访问http://localhost:3344/master/application-dev.yml读取application.yml配置中dev环境
http://localhost:3344/master/config-client-dev.yml读取config-client.yml配置文件中dev环境
客户端
-
依赖
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-config --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-config</artifactId> <version>2.1.3.RELEASE</version> </dependency> <!--eureka完善监控信息--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> </dependencies>
-
yml配置
-
application.yml:用户级配置
#用户级配置 spring: application: name: springcloud-config-client-3355
-
bootstrap:系统级配置
#系统级配置 spring: cloud: config: uri: http://localhost:3344 name: config-client #需要从git上读取的资源名称,不要后缀 profile: dev #环境 label: master #分支
-
-
测试
-
启动类
@SpringBootApplication public class ConfigClient_3355 { public static void main(String[] args) { SpringApplication.run(ConfigClient_3355.class, args); } }
-
controller
@RestController public class ConfigClientController { //这里读取的都是远程git服务器上 @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; } }
-
-
访问:http://localhost:8201/config通过获取信息,此时修改bootstrap.yml中profile为test,就可以通过8202端口访问
分类:
SpringClud
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY