Spring @value用法示例詳解
為瞭簡化讀取properties文件中的配置值,spring支持@value註解的方式來獲取,這種方式大大簡化瞭項目配置,提高業務中的靈活性。
一、兩種使用方法
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內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Spring註解@Value及屬性加載配置文件方式
- 使用@Value值註入及配置文件組件掃描
- 詳解spring如何使用註解開發
- Spring使用@Value註解與@PropertySource註解加載配置文件操作
- 一篇文章教帶你瞭解Java Spring之自動裝配