我需要將Spring Boot應用程序的配置保存在數據庫中。Spring Boot:使用數據庫和application.properties進行配置
是否可以將數據庫信息存儲在application.properties
中並使用它們連接到數據庫並從那裏檢索所有其他屬性?
所以我application.properties
會是什麼樣子:
spring.datasource.url=jdbc:sqlserver://localhost:1433;databaseName=mydb
spring.datasource.username=user
spring.datasource.password=123456
spring.jpa.database-platform=org.hibernate.dialect.SQLServer2012Dialect
而其他配置會從數據庫的東西中獲取這樣的:
@Configuration
@PropertySource(value = {"classpath:application.properties"})
public class ConfigurationPropertySource {
private final ConfigurationRepository configurationRepository;
@Autowired
public ConfigurationPropertySource(ConfigurationRepository configurationRepository) {
this.configurationRepository = configurationRepository;
}
public String getValue(String key) {
ApplicationConfiguration configuration = configurationRepository.findOne(key);
return configuration.getValue();
}
}
隨着ApplicationConfiguration
爲Entity
。
但是Spring Boot沒有從數據庫中獲取配置。
你應該能夠從你寫的屬性文件中獲取數據庫配置。你在控制檯中看到任何錯誤嗎? – kuhajeyan
我從'application.properties'獲取配置。我可以連接到數據庫並保存實體。但是數據庫中的屬性未加載。 – deve
然後ConfigurationRepository做什麼? – kuhajeyan