我們springboot項目有自己默認的配置文件,一般地由application.yml和bootstrap.yml組成,前者是模塊的配置,后者是微服務的配置,后臺比前者先被框架加載。
我們有時需要自己定義配置,可能不是簡單的字符串,它可能是一個對象,對象里有具體的配置段,它也是application.yml的一部分,你可以把自己的代碼添加上,當然你也可以新建全新的文件。
例如,有一個配置由name和version組成,我們在application.yml里可以把它定義成project元素下面的,這里的project叫前綴,我們在定義配置實體時用來修飾它。
package test.lind.javaLindDay.utilDemo;import org.springframework.boot.context.properties.ConfigurationProperties;import org.springframework.context.annotation.PropertySource;import org.springframework.stereotype.Component;@Component@ConfigurationProperties(prefix = "project")@PropertySource(value = "classpath:config.yml")public class MyConfig { private String version; private String name; public String getVersion() { return version; } public void setVersion(String version) { this.version = version; } public String getName() { return name; } public void setName(String name) { this.name = name; }}
而其中的注解@component表示可以使用@Autowired注入!如果配置里只是一個字符串的項,我們也可以使用@Value來進行注入,如下代碼展現了兩種
注入的方式。
@RestControllerpublic class HomeController { @Autowired MyConfig config; @Value("${lind.name}") String app; @RequestMapping("/") public String Index() { return "HOME=" + config.getName() + "app=" + app; }}
總結
以上所述是小編給大家介紹的springboot如何讀取自定義配置項,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!
新聞熱點
疑難解答
圖片精選