Spring Boot 为application.properties文件赋值Sping Boot

jfewjypa  于 2023-01-02  发布在  Spring
关注(0)|答案(2)|浏览(222)

我有一个要求,我在运行时在JavaCode中获得DB URI,DB URL等。这个值需要提供给application.properties,以便它进行DB调用。
我总是使用Sping Boot 来检索在www.example.com文件中分配的值application.properties,而不是相反。如何实现类似的db.uri = {comingFromJavaCode}

yjghlzjz

yjghlzjz1#

您的问题已在此stackoverflow线程中得到解答。Write/Update properties file value in spring
顺便说一下,application.propertiesspring Boot 应用程序在启动时只读取www.example.com文件一次,在运行时向该文件添加任何新值都没有任何影响,下面的stackoverflow线程解释了如何在loadtime. How can I reload properties file in Spring 4 using annotations?期间重新加载application.properties文件,本文也很用途:https://docs.spring.io/spring/docs/3.2.6.RELEASE/javadoc-api/org/springframework/context/support/ReloadableResourceBundleMessageSource.html

3lxsmp7m

3lxsmp7m2#

在Sping Boot 中,可以使用System.setProperty(String key, String value)以编程方式添加或更新www.example.com中的属性application.properties

@SpringBootApplication
public class SpringBootTestApplication {
    public static void main(String[] args) {
        
        System.setProperty("key", "value");
        
        SpringApplication.run(SpringBootTestApplication.class, args);
        
    }
}

注意:使用System.setProperty(字符串键、字符串值)定义的值优先于www.example.com文件中的值application.properties

相关问题