Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从代码而不是从我的application-dev.yml、application-prod.yml初始化属性_Java_Spring Boot_Configuration - Fatal编程技术网

Java 如何从代码而不是从我的application-dev.yml、application-prod.yml初始化属性

Java 如何从代码而不是从我的application-dev.yml、application-prod.yml初始化属性,java,spring-boot,configuration,Java,Spring Boot,Configuration,我的springboot应用程序有几个yml文件(每个文件用于不同的配置文件-dev、prod)可以从中加载配置。我正在将配置移动到DB 示例配置如下: admin: id: user05 firstname: Brian lastname: Leavy purl: http://plixes.com/seai/ji 我从数据库中读取值,并将其放在本地。我不知道如何在我的程序中将这些值注入到这些值上,比如键值 admin.id:user05 admin.firstname: B

我的springboot应用程序有几个yml文件(每个文件用于不同的配置文件-dev、prod)可以从中加载配置。我正在将配置移动到DB

示例配置如下:

admin:
  id: user05
  firstname: Brian
  lastname: Leavy
  purl: http://plixes.com/seai/ji
我从数据库中读取值,并将其放在本地。我不知道如何在我的程序中将这些值注入到这些值上,比如键值

admin.id:user05
admin.firstname: Brian
admin.lastname: Leavy
admin.purl: http://plixes.com/seai/ji
这样应用程序就可以正常使用它们。 我需要很早对它们进行初始化,因为有些值是springboot配置,比如

server:
  port: 5007
任何指示都会非常有用

EDIT1:

经过几个小时的搜索我才发现你可以做这样的事情

SpringApplication app = new SpringApplication(Lexon.class);
app.setDefaultProperties(Collections
                       .singletonMap("server.port", "5007"));
app.setDefaultProperties(Collections
                       .singletonMap("admin.id", "user05"));
这可以工作,但看起来不干净


有更好的方法吗

有一个Spring Boot Configuration库,可以将配置外部化到数据库或git存储库中

这样,就可以添加一个数据源和一个SQL语句来检索属性值

例如,在application.yml上:

spring:
  cloud:
    config:
      server:
        jdbc:
          sql: SELECT KEY, VALUE from  MY_PROPERTIES where APPLICATION=? and PROFILE=? and LABEL=?

查看此网站了解更多详细信息:

Spring Boot Configuration库,可以将配置外部化到数据库或git存储库中

这样,就可以添加一个数据源和一个SQL语句来检索属性值

例如,在application.yml上:

spring:
  cloud:
    config:
      server:
        jdbc:
          sql: SELECT KEY, VALUE from  MY_PROPERTIES where APPLICATION=? and PROFILE=? and LABEL=?
查看此网站了解更多详细信息:

尝试此:尝试此: