实体:标注@Component和@ConfigurationProperties,prefix:前缀是site的配置自动绑定到类中的属性,如果不写@Component,则需要在主启动程序上面加@EnableConfigurationProperties(SiteInfo.class)
package com.jay.SpringBootStudy8.utils; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; @Component @ConfigurationProperties(prefix = "site") public class SiteInfo { @Override public String toString() { return "SiteInfo{" + "domain=‘" + domain + ‘\‘‘ + ", copyright=‘" + copyright + ‘\‘‘ + ‘}‘; } private String domain; private String copyright; public String getDomain() { return domain; } public void setDomain(String domain) { this.domain = domain; } public String getCopyright() { return copyright; } public void setCopyright(String copyright) { this.copyright = copyright; } }
yml配置,properties是:site.domain=www.jay.com
site: domain: www.jay.com copyright: xxx@v1.1.1
使用
@Autowired private SiteInfo siteInfo; @Test public void test3(){ System.out.println(siteInfo); }
结果输出就是SiteInfo{domain=‘www.jay.com‘, copyright=‘xxx@v1.1.1‘},属性值就自动绑定上了。