SpringBoot讀取properties文件配置項(xiàng)過程解析
使用SpringBoot開發(fā)過程中,難免需要配置相關(guān)數(shù)據(jù)項(xiàng),然后在Java代碼中@Autowired注入并使用。
我們應(yīng)該如何讀取properties文件中的配置項(xiàng)呢?
基于SpringBoot項(xiàng)目,配置項(xiàng)一般都存放在application.properties文件中。有2種常用的方法:
1.使用@Value注解標(biāo)注在Field上面
2.使用@ConfigurationProperties注解標(biāo)注在類或者方法上
為了講解方便,附上application.properties文件配置好的數(shù)據(jù)項(xiàng)
如下圖所示:
我們可以看到1~3行的配置項(xiàng),有一個(gè)共同的特點(diǎn):有相同的前綴spring.datasource,既然具備這個(gè)特點(diǎn),那么我們就可以定義一個(gè)class,里面有3個(gè)fields:userName、password和url。
然后在類上使用@ConfigurationProperties標(biāo)注并指定前綴spring.datasource即可。最后,且非常重要的是,SpringBoot的主入口類 XxxApplication類需要使用@EnableAutoConfiguration進(jìn)行標(biāo)注(在SpringBoot 2.x可省略)!
下面附上示例:
@ConfigurationProperties(prefix = 'spring.datasource')public class DataSourceProperties { private String userName; private String password; private String url;}
那么,類似第5行的 web.upload.path配置項(xiàng),又應(yīng)該如何讀取呢?
其實(shí),我們可以使用@Value完成屬性值注入field。參見以下代碼塊:
@Value('${web.upload.path}')private String webUploadPath;
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 利用CSS3新特性創(chuàng)建透明邊框三角2. ASP中解決“對象關(guān)閉時(shí),不允許操作。”的詭異問題……3. WML語言的基本情況4. React優(yōu)雅的封裝SvgIcon組件示例5. 使用css實(shí)現(xiàn)全兼容tooltip提示框6. IE6/IE7/IE8/IE9中tbody的innerHTML不能賦值的完美解決方案7. jsp+mysql實(shí)現(xiàn)網(wǎng)頁的分頁查詢8. 詳解盒子端CSS動(dòng)畫性能提升9. .NET 中配置從xml轉(zhuǎn)向json方法示例詳解10. ASP.NET Core實(shí)現(xiàn)中間件的幾種方式
