Spring Boot中如何读取配置呢?
下文笔者讲述Springboot读取配置的方法分享,如下所示:
配置文件内容如下:
我们都知道Spring Boot中我们常使用 application.yml 或 properties文件放置配置文件 我们可使用@PropertySource,@Value,@Environment, @ConfigurationProperties读取配置文件 下文笔者将一一道来,如下所示:例:
配置文件内容如下:
info.username=maomao info.website=java265 info.other=不想说
方式1:使用@Value注解的方式读取
import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @Component public class InfoConfig1 { @Value("${info.username}") private String username; @Value("${info.website}") private String website; @Value("${info.other}") private String other; public String getUserName() { return username; } public void setUserName(String username) { this.username = username; } public String getWebSite() { return website; } public void setWebSite(String website) { this.website = website; } public String getOther() { return other; } public void setOther(String other) { this.other = other; } }
@ConfigurationProperties注解读取方式
@Component @ConfigurationProperties(prefix ="info") public class InfoConfig2 { private String username; private String website; private String other; public String getUserName() { return username; } public void setUserName(String username) { this.username = username; } public String getWebSite() { return website; } public void setWebSite(String website) { this.website = website; } public String getOther() { return other; } public void setOther(String other) { this.other = other; } }
读取指定文件 资源目录下建立config/db-config.properties
例:db.username=root db.password=123456 @PropertySource+@Value注解读取方式 ------------------------------------------------ @Component @PropertySource(value={"config/db-config.properties"}) public class DBConfig1 { @Value("${db.username}") private String username; @Value("${db.password}") private String password; public String getUsername() { return username ; } public void setUsername(String username){ this.username = username; } public String getPassword(){ return password; } public void setPassword(String password){ this.password = password; } } 注意事项 注意:@PropertySource不支持yml文件读取
@PropertySource+@ConfigurationProperties注解读取方式
@Component @ConfigurationProperties(prefix ="db") @PropertySource(value={"config/db-config.properties"}) public class DBConfig2 { private String username; private String password; public String getUsername() { return username ; } public void setUsername(String username){ this.username = username; } public String getPassword(){ return password; } public void setPassword(String password){ this.password = password; } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。