Java 是否可以配置一个PropertySourcesPlaceholderConfigurer,该Configurer从数据库中读取数据,该数据库进一步依赖于属性文件?
我有一个用例,其中我有一个定制的PropertySourcesPlaceholderConfigurer,它从数据库中读取属性,并且依赖于DataSourceBean 早些时候,DataSourceBean仅使用.java文件中的凭据创建。所以一切都很顺利 现在,我们想从.properties/.yml文件中选择那些基于概要文件的凭据 但是,现在它就像一个循环,即Spring属性环境需要Datasource,Datasource需要.propertiesJava 是否可以配置一个PropertySourcesPlaceholderConfigurer,该Configurer从数据库中读取数据,该数据库进一步依赖于属性文件?,java,spring,spring-boot,Java,Spring,Spring Boot,我有一个用例,其中我有一个定制的PropertySourcesPlaceholderConfigurer,它从数据库中读取属性,并且依赖于DataSourceBean 早些时候,DataSourceBean仅使用.java文件中的凭据创建。所以一切都很顺利 现在,我们想从.properties/.yml文件中选择那些基于概要文件的凭据 但是,现在它就像一个循环,即Spring属性环境需要Datasource,Datasource需要.properties 有人面对过这个问题吗?有什么解决方案吗?
有人面对过这个问题吗?有什么解决方案吗?您可以通过以下方式重新构造应用程序:
数据源
以访问数据库singletonspringbean
中,然后自动连接到所需位置谢谢,妈妈。我懂了。。您的建议是手动读取数据源属性(文件IO),而不是从Spring环境中使用Spring注入。是的,它可以解决这个问题。但是,如果Spring中有一些东西可能会有所帮助,那么数据源属性将来自Spring环境,如果它们不在.properties文件中并且可能位于其他位置(例如OS环境变量),Spring环境也会提供这些属性。谢谢@Jatinder Jindal,不,您不会手动读取连接属性。但是,spring将在启动应用程序时从您的属性文件中读取它们。现在,对于数据库上的属性,您需要在创建DataSourceBean之后读取它们。(将它们放在单独的可注射bean中)。