Spring @value用法示例詳解
為了簡化讀取properties文件中的配置值,spring支持@value注解的方式來獲取,這種方式大大簡化了項目配置,提高業(yè)務中的靈活性。
一、兩種使用方法
1、@Value(“#{configProperties[‘key’]}”)
2、@Value(“${key}”)
二、配置
2.1 @Value(“#{configProperties[‘key’]}”)使用
2.1.1配置文件:
配置方法1:
<bean id="configProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="locations">
<list>
<value>classpath:value.properties</value>
</list>
</property>
</bean>
配置方法2:
<util:properties id="configProperties" location="classpath:value.properties"></util:properties>注:配置1和配置2等價,這種方法需要util標簽,要引入util的xsd:
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util-3.0.xsd"
value.properties
key=1
ValueDemo.java
@Component
public class ValueDemo {
@Value("#{configProperties['key']}")
private String value;
public String getValue() {
return value;
}
}
2.2 @Value(“${key}”)使用
2.2.1 配置文件
1、在2.1.1的配置文件基礎上增加:
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
<property name="properties" ref="configProperties"/>
</bean>
2、直接指定配置文件,完整的配置:
<bean id="appProperty"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<array>
<value>classpath:value.properties</value>
</array>
</property>
</bean>
ValueDemo.java
@Component
public class ValueDemo {
@Value("${key}")
private String value;
public String getValue() {
return value;
}
}
到此這篇關于Spring-@value用法詳解的文章就介紹到這了,更多相關Spring @value內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
如何用Intellij idea2020打包jar的方法步驟
這篇文章主要介紹了如何用Intellij idea 2020打包jar的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-04-04
Java Lambda表達式與匿名內(nèi)部類的聯(lián)系和區(qū)別實例分析
這篇文章主要介紹了Java Lambda表達式與匿名內(nèi)部類的聯(lián)系和區(qū)別,結合實例形式分析了Java Lambda表達式與匿名內(nèi)部類功能、用法、區(qū)別及操作注意事項,需要的朋友可以參考下2019-10-10
完美解決gson將Integer默認轉(zhuǎn)換成Double的問題
下面小編就為大家?guī)硪黄昝澜鉀Qgson將Integer默認轉(zhuǎn)換成Double的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03
Java使用注解實現(xiàn)BigDecimal的四舍五入
BigDecimal是Java中的一個類,位于java.math包中,它提供了任意精度的有符號十進制數(shù)字的表示,以及對這些數(shù)字進行算術運算的方法,本文介紹了Java使用注解實現(xiàn)BigDecimal的四舍五入的相關知識,需要的朋友可以參考下2024-09-09
SpringCloud的@RefreshScope 注解你了解嗎
這篇文章主要介紹了Spring Cloud @RefreshScope 原理及使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-09-09

