ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

六、Spring Cloud之配置中心config,龙湖集团java面试

2021-12-23 17:01:50  阅读:108  来源: 互联网

标签:java spring 配置 application Spring config properties 加载


启动类


在启动类中,我们加入@EnableConfigServer 注解

在这里插入图片描述

配置文件


在配置文件中我们加入如下配置:

server.port=9008

spring.application.name=config-server

#使用本地属性文件

spring.profiles.active = native

#属性文件地址,只要指定文件夹的路径

spring.cloud.config.server.native.searchLocations=classpath:/properties

这里我们spring.profiles.active = native 表示你从本地加载配置文件,后面我们再从git 上加载配置文件。

如果不配置加载文件的地址,就会从src/main/resources 中加载文件。我这里配置了从properties文件夹下加载,所以在resources 文件夹下创建一个properties 文件夹。我们一eureka-server 服务为例。我们将这个项目的配置放到properties 文件夹下,并改名为

quellanan-eurekaserver.properties

在这里插入图片描述

客户端配置

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

好了,上面的服务端就已经配置好了,接下来我们来配置客户端。

pom.xml


在pom.xml 文件中引入config 依赖

org.springframework.cloud

spring-cloud-starter-config

bootstrap.p

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

roperties


在resources 目录下创建一个 bootstrap.properties 文件,至于为什么要是这个而不是application.properties 文件,是由加载机制决定的,加载的时候会先加载bootstrap.properties 文件,然后加载application.properties ,

文件内容如下:

spring.application.name=quellanan

spring.cloud.config.profile=eurekaserver

spring.cloud.config.label=master

spring.cloud.config.uri=http://localhost:9008/

在这里插入图片描述

在本地也是一样的,spring.application.name和spring.cloud.config.profile拼起来就是文件名称。

测试

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

好了,服务端和客户端都配置好了,我们现在先将客户端的application.properties 文件删除掉,然后启动这两个项目,先启动config。

在这里插入图片描述

可以看到eureka-server 成功的从config 中加载到了配置文件并启动了项目。

在这里插入图片描述

番外

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

就这样简单的一个配置中心就已经实现了,最后说一个,既然我们有配置中心,那我们按在项目本身的application.properties 写的配置会加载么?答案是会加载的,至于比配置中心先加载还是后加载,我个人偏向于后加载,在application.properties 中写的属性可以覆盖配置中心中的属性。但是建议,依然使用了配置中心,就希望将所有的配置都放到配置中心里面,不要单独的在项目中新增配置,这样会增加管理的成本。

代码上传到github:

https://github.com/QuellanAn/SpringCloud

标签:java,spring,配置,application,Spring,config,properties,加载
来源: https://blog.csdn.net/m0_65483730/article/details/122111443

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有