在应用程序上放置属性的区别是什么?Yml或bootstrap。穿弹簧靴的Yml ? 在日志记录。配置情况下,应用程序的工作方式不同。
当前回答
嗯,我完全同意关于这一点已经存在的答案:
引导。yml用于保存指出远程配置位置的参数,并使用这些远程配置创建引导应用程序上下文。
实际上,它也能够存储与应用程序相同的普通属性。yml做。但请注意这个棘手的问题:
如果你在引导中放置属性。Yml,它们的优先级将低于几乎任何其他属性源,包括application.yml。如这里所述。
让我们弄清楚,有两种与bootstrap.yml相关的属性:
在引导阶段加载的属性。我们使用自举法。yml来找到属性持有者(一个文件系统,git存储库或其他东西),并且我们以这种方式获得的属性具有高优先级,所以它们不能被本地配置覆盖。如这里所述。 在bootstrap.yml中。如前所述,它们的优先级将较低。使用它们来设置默认值也许是个好主意。
这就是把属性放到应用程序上的区别。Yml或bootstrap。春靴中的Yml有:
在引导阶段加载配置文件的属性只能放在bootstrap.yml中。 至于所有其他类型的属性,将它们放在应用程序中。Yml将获得更高的优先级。
其他回答
嗯,我完全同意关于这一点已经存在的答案:
引导。yml用于保存指出远程配置位置的参数,并使用这些远程配置创建引导应用程序上下文。
实际上,它也能够存储与应用程序相同的普通属性。yml做。但请注意这个棘手的问题:
如果你在引导中放置属性。Yml,它们的优先级将低于几乎任何其他属性源,包括application.yml。如这里所述。
让我们弄清楚,有两种与bootstrap.yml相关的属性:
在引导阶段加载的属性。我们使用自举法。yml来找到属性持有者(一个文件系统,git存储库或其他东西),并且我们以这种方式获得的属性具有高优先级,所以它们不能被本地配置覆盖。如这里所述。 在bootstrap.yml中。如前所述,它们的优先级将较低。使用它们来设置默认值也许是个好主意。
这就是把属性放到应用程序上的区别。Yml或bootstrap。春靴中的Yml有:
在引导阶段加载配置文件的属性只能放在bootstrap.yml中。 至于所有其他类型的属性,将它们放在应用程序中。Yml将获得更高的优先级。
引导。Yml是启动spring引导应用程序和应用程序时加载的第一个文件。属性在应用程序启动时加载。 在引导中,你可以保留配置服务器的凭证等。Yml,在加载应用程序时需要,然后在应用程序中。你保留的属性可能是数据库URL等。
引导。Yml或bootstrap.properties
只有当您使用Spring Cloud并且应用程序的配置存储在远程配置服务器(例如Spring Cloud Config server)时,才会使用/需要它。
从文档中可以看到:
Spring Cloud应用程序通过创建“引导”上下文来操作,该上下文是主应用程序的父上下文。它负责从外部源加载配置属性,并解密本地外部配置文件中的属性。
注意引导。Yml或bootstrap。属性可以包含额外的配置(例如默认值),但通常你只需要在这里放置引导配置。
通常它包含两个属性:
配置服务器的位置(spring.cloud.config.uri) 应用程序名称(spring.application.name)
在启动时,Spring Cloud使用应用程序的名称对配置服务器进行HTTP调用,并检索该应用程序的配置。
应用程序。Yml或application.properties
包含标准应用程序配置——通常是默认配置,因为在引导过程中检索的任何配置都将覆盖这里定义的配置。
这只是我的两毛钱。
引导。yml或Bootstrap。properties用于从Spring Cloud Server获取配置。
例如,在My Bootstrap中。我有以下配置文件
spring.application.name=Calculation-service
spring.cloud.config.uri=http://localhost:8888
在启动应用程序时,它试图通过连接到http://localhost:8888来获取服务的配置,并查看Calculation-service。Spring Cloud Config服务器中显示的属性
您可以在启动compute - service时从它的日志中验证相同的内容
INFO 10988——[restartedMain] c.c.c configservicepropertysourcelocator:从服务器获取配置在:http://localhost:8888
引导。当你使用Spring Cloud并且你的应用程序的配置存储在远程配置服务器(例如Spring Cloud Config server)时,yml被使用。引导。Yml在application.yml之前加载
推荐文章
- 在maven中安装mvn到底做什么
- 不可变与不可修改的集合
- 如何在JSON中使用杰克逊更改字段名
- GSON -日期格式
- 如何从线程捕获异常
- 无法解析主机"<URL here>"没有与主机名关联的地址
- 如何在Java中打印二叉树图?
- 用Spring我可以做一个可选的路径变量吗?
- String.format()在Java中格式化双重格式
- com.jcraft.jsch.JSchException: UnknownHostKey
- Java中的操作符重载
- 如何加速gwt编译器?
- 在Hibernate中重新连接分离对象的正确方法是什么?
- 应该……接住环内还是环外?
- 如何格式化Joda-Time DateTime仅为mm/dd/yyyy?