我有一个用例,其中我有一些包含属性的类,并在从外部源启动应用程序时进行初始化,现在我希望像数据源这样的spring boot自动配置的bean从这些属性类中获取属性。
示例:
@Configuration
public class A {
String url;
String password;
String username:
.
.
.
othere datasource related fields
.
.
.
getters...
setters...
}
现在,此bean将在启动时创建并从外部源获取值。 数据源Bean(SQL Server)的自动配置如何从此类中获取值,以及如何在数据源之前强制初始化该Bean。
答案 0 :(得分:0)
您可以为此使用一个@ConfigurationProperties
带注释的类。可以用来从.properties
或.yml
文件中读取配置。
用法示例:
@Configuration
@PropertySource("classpath:configprops.properties")
@ConfigurationProperties(prefix = "myprop")
public class ConfigProperties {
private String property1;
private String property2
// getters and setters
}
在.properties
文件中,我们按如下方式存储字段:
#My properties
myprop.property1=property
myprop.property2=another property
现在,根据Spring文档,用@ConfigurationProperties
注释一个类就足够了,以便将其转换为bean并使其能够自动装配。通常人们也倾向于应用@Configuration
注释。