当前位置: 首页 > 知识库问答 >
问题:

Spring Boot外部属性文件(带配置文件)?

蓟和煦
2023-03-14

我试图实现的是在application.yml文件上指定一个目录,该目录直接位于类路径上(在/resources下)。我希望能有这样的东西:

 spring:     
  datasource:
    driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
  profiles:
    active: dev
  config:
    location: C:\\app\\configs\\
c:\app\configs:
application-dev.yml
application-staging.yml
application-production.yml

使用这种方法,IDE将始终默认为application-dev.yml。当我通过gradle构建应用程序,并在传递命令行参数的同时运行它时,我可以指定配置文件,从而加载适当的文件。理想情况下,能够做到这一点:

java-jar-dspring.profiles.active=staging appliation.jar

我看到的所有示例或答案都显示了如何仅从命令行传递所有这些配置选项,而不是使用

从默认配置文件(例如:application.yml)中。首选的方法是按照上面所述的方式进行设置,以便最小化部署。

谢谢您的任何建议/帮助!

共有1个答案

皇甫雨华
2023-03-14

您可以试一试,将基本配置提供为“bootstrap.yml”而不是“application.yml”。之后,spring boot应该根据配置路径中选择的配置文件来选择正确的配置。

对我来说,如果您不想使用命令行参数,这似乎是最接近您用例的解决方案。

 类似资料:
  • 寻找在Springboot应用程序中配置多个配置文件特定属性文件的最佳方法。下面是一个例子: -资源  · --application.properties  · · · · · --德夫             --application-dev.properties             --ldap-dev.properties             --Quartz-Dev.Prope

  • 我构建了一个访问数据库并从中提取数据的Spring-Boot应用程序。一切正常,但我想从外部. Properties文件配置表名。 比如: 我想找点东西,但没找到。 您可以使用注释访问外部属性。 所以我的问题是:有没有办法配置表名?或者我可以更改/拦截hibernate发送的查询吗? 解决方案: 好的,hibernate 5适用于。所以我创建了自己的。 此外,这篇关于NamingStrategy的

  • 我想在spring Boot中设置3个配置文件:production,development,test,使用外部配置文件。 应用程序类: AppConfig类:

  • 我有一个启动应用程序,部署到一个外部tomcat服务器,一切工作在我的本地与本地数据库。现在,我必须将代码推广到数据库配置不同的更高环境。我读了很多关于配置文件的etc...,但是当它是一个外部tomcat并且不使用

  • 我希望在运行时传递变量,一旦war文件部署在tomcat上。如何使用classplath中的application.properties以及另一个属性文件ex。abcd.properties位于specific directory.am基本上希望设置额外的类路径,并从该路径中的属性文件中读取值,以及war部署的默认类路径位置。 我使用Spring boot。其中一种方法是将所有属性传递到数据库端,

  • 我想将@EnableJPARepositories基本包的配置外部化。 我有两个不同的样品包如下 com。项目道博士 我尝试了下面的属性外部化(不适用于多个包) ProjectConfig.class 配置。性质 对于多个包,是否有其他方法将此配置外部化? 谢谢