![](/img/trans.png)
[英]How to dynamically change client_secret in Spring Security with Spring boot
[英]How to change database dynamically in Spring Boot?
我們如何在運行時更改 Spring 啟動項目中的數據庫憑據和源,或者您可以動態地說? 假設如果我們部署到測試服務器,API 項目中的數據庫連接指向測試數據庫,如果部署到生產服務器,數據庫自動指向生產服務器。 做一些研究,我們需要在 spring 引導項目中設置這些設置。 從技術上講,我們的項目將動態切換到多個數據庫連接。
所有這些過程將如何在 Spring 引導中發生?
假設如果我們部署到測試服務器,API 項目中的數據庫連接指向測試數據庫,如果部署到生產服務器,數據庫自動指向生產服務器。
有幾種方法。 首先,您可以將屬性值作為環境變量的一部分提供。 前任:
-Ddb_url=jdbc:mysql://<server>:<port>/<databasename> -Ddb_username=root -Ddb_password=mysql
spring.datasource.url=${db_url}
spring.datasource.username=${db_username}
spring.datasource.password=${db_password}
或者
您可以根據不同的環境使用不同的屬性文件。
application.properties
application-test.properties
application-prod.properties
在這些屬性文件中,您可以根據配置文件預先配置地址。 要激活特定環境的配置文件,您必須向 springboot 應用程序提供以下道具。 前任:
-Dspring.profiles.active=prod
在這種情況下,將首先使用application.properties
文件來配置屬性,然后再配置application-prod.properties
中的屬性。 如果兩個文件中的屬性匹配,則后面文件的屬性將覆蓋默認屬性文件中的屬性,即application.properties
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.