请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

application-name属性

视频中 bootstrap.yml 的【application:name:content-canter】 直接从application.yml 中剪切过来,我不是很懂,那意味着application.yml配置中直接缺少了【application-name】属性,这样没问题吗?如果没问题,那是不是意味着原先该属性是多余的?如果有问题,可是后续的项目启动却能正常启动,这样来说,是不是之后正常启动的项目中,Feign或者Ribbon两者中的一个会出现问题?

正在回答 回答被采纳积分+3

1回答

大目 2023-07-18 18:14:19

12-5节是不是漏看了,这一节有讲为什么啊。

bootstrap上下文在应用上下文启动之前启动,用来读远程配置。

配置读取需要知道读哪个应用的配置,所以要放到bootstrap里面。

而前面放application里面也不多余,因为bootstrap是配置中心引入的,如果你不加相关依赖,根本不读bootstrap文件中的配置。

0 回复 有任何疑惑可以回复我~
  • 提问者 棋子Four #1
    首先,很感谢你的及时回复!
    
    我的疑问来源于的是12-2的3:50~4:00时间段的剪切过程。
    首先,两个配置文件均配置了ip端口,实际项目中应该是需要连接两个Nacos服务(视频中我们使用同一个Nacos所以ip端口相同),一个用于 服务发现,一个用于配置管理的。
    
    而application.yml中的【application-name】属性是用于给 服务发现的Nacos标识该微服务而使用的, 那在我看来,将application.yml中的【application-name】属性直接剪切给bootstrap文件,会导致服务发现的Nacos无法注册content-center,这个属性我觉得两个文件都应该要有。
    
    接着我分析了你说的回答和12-5视频,结合我认定的事实:从视频中我只能判断出application.yml中现在是没有【application-name】属性的,我可不可以认为:
    
    因为引导上下文是应用上下文的父级(我认为父级也就是优先权较高或者首先加载的意思),所以,当引导上下文中指定了【application-name】属性之后,应用上下文也就“继承”了该属性,如此一来就填补了application.yml中的【application-name】属性?
    回复 有任何疑惑可以回复我~ 2023-07-19 12:53:58
  • 大目 回复 提问者 棋子Four #2
    哈喽,是的哈。
    application上下文可以读取bootstrap上下文的配置的
    可以认为,bootstrap.yaml里面的配置,在子上下文也可以读到。
    回复 有任何疑惑可以回复我~ 2023-10-07 18:01:13
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信