這篇文章主要講解了Spring怎么讀取配置文件屬性,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。
按需設(shè)計網(wǎng)站可以根據(jù)自己的需求進(jìn)行定制,網(wǎng)站設(shè)計、網(wǎng)站制作構(gòu)思過程中功能建設(shè)理應(yīng)排到主要部位公司網(wǎng)站設(shè)計、網(wǎng)站制作的運(yùn)用實際效果公司網(wǎng)站制作網(wǎng)站建立與制做的實際意義
一 前言
本篇內(nèi)容包括spring 運(yùn)行時讀取配置文件的多種方式和SpEl表達(dá)式入門基礎(chǔ);
二運(yùn)行時讀取配置文件
spring 運(yùn)行時讀取配置文件值提供了2種方式
屬性占位符(Property placeholder)。
Spring表達(dá)式語言(SpEL)
2.1 讀取外部配置文件
使用 @PropertySource 注解可以讀取導(dǎo)classpath下配置文件屬性;參數(shù)如下
首先resource 目錄下創(chuàng)建配置文件zszxz.properties ; 內(nèi)容如下
zszxz.name = zszxz
zszxz.point = share
其次讀取配置文件配置類如下
@Configuration @PropertySource(value = {"classpath:zszxz.properties"},encoding = "UTF-8") @Component public class EnvironmentProperty { // 注入環(huán)境 @Autowired private Environment environment; public void outputProperty(){ System.out.println(environment.getProperty("zszxz.name")); } }
最后通過測試類調(diào)用outputProperty()輸出配置文件中屬性的值
@RunWith(SpringJUnit4ClassRunner.class)//創(chuàng)建spring應(yīng)用上下文 @ContextConfiguration(classes= EnvironmentProperty.class)//加載配置類 public class PropertyTest { @Autowired EnvironmentProperty environmentProperty; @Test public void test(){ // zszxz environmentProperty.outputProperty(); } }
Tip 也可以使用@PropertySources 注解,其value是 @PropertySource類型的數(shù)組;
其中 EnvironmentProperty 獲取主要屬性方法如下
2.2 使用占位符獲取配置文件
使用注解@Value獲取配置文件屬性值; 其中值使用占位符("${........}")方式;
配置類示例
@Configuration @PropertySource(value = {"classpath:zszxz.properties"},encoding = "UTF-8") @Component public class EnvironmentProperty { @Value("${zszxz.point}") private String point; public void outputPoint(){ System.out.println(point); } }
測試示例
@RunWith(SpringJUnit4ClassRunner.class)//創(chuàng)建spring應(yīng)用上下文 @ContextConfiguration(classes= EnvironmentProperty.class)//加載配置類 public class PropertyTest { @Autowired EnvironmentProperty environmentProperty; @Test public void testPoint(){ // share environmentProperty.outputPoint(); } }
2.3 SpEl表達(dá)式
Spring表達(dá)式語言(Spring Expression Language,SpEL)是一種靈活的表達(dá)式語言,能夠以簡潔的方式將值裝配到bean屬性或者構(gòu)造器參數(shù)中,此過程中能夠計算表達(dá)式獲取計算值;使用@Valjue注解時,SpEL表達(dá)式要放到“#{......}”之中;
獲取bean示例
@Value("#{environmentProperty}") private EnvironmentProperty getBean; @Test public void testBean(){ // com.zszxz.property.EnvironmentProperty$$EnhancerBySpringCGLIB$$8e54e11f@1d9b7cce System.out.println(getBean); }
獲取方法示例
@Value("#{environmentProperty.getStr()}") private String getMethod; @Test public void testMethod(){ // 知識追尋者 System.out.println(getMethod); }
獲取屬性示例
注意點:username字段必須是public
@Value("#{environmentProperty.username}") private String getField; @Test public void testField(){ // 知識追尋者 System.out.println(getField); }
獲取靜態(tài)方法示例
其中T()表示運(yùn)算會得到一個Class對象;
@Value("#{T(java.lang.Math).random()}") private double number; @Test public void testStatic() { // 0.9205474938572363 System.out.println(number); }
非空判定示例
其中? 表示非空判定
@Value("#{environmentProperty.username?.toString()}") private String notNull; @Test public void testNotNUll() { // 知識追尋者 System.out.println(notNull); }
支持運(yùn)算符如下
看完上述內(nèi)容,是不是對Spring怎么讀取配置文件屬性有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
當(dāng)前名稱:Spring怎么讀取配置文件屬性
文章轉(zhuǎn)載:http://jinyejixie.com/article46/pshgeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、搜索引擎優(yōu)化、軟件開發(fā)、網(wǎng)站營銷、網(wǎng)站制作、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)