Spring實現註解式配置

通常咱們對於給Spring的bean進行使用properties文件的配置,使用以下的方式:java

<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd 
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd">
    
    <context:property-placeholder location= "classpath:props/myPropFile.properties"  ignore-unresolvable= "true" />
    <!-- sample bean -->
    <bean id= "sampleBean" class= "your.package.SampleClass" >
         <property name ="myProp" value= "${prop.in.propfile}" />
    </bean>
</beans>

而後在SampleClass中實現myProp的定義和setter。
這樣在兩個地方寫來寫去以爲略有麻煩,容易產生問題。
在Spring 3.0以上能夠用註解的方式略掉spring配置文件中相關的配置了。
配置中加入:spring

<beans xmlns:util="http://www.springframework.org/schema/util"  
    xsi:schemaLocation="http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd">  
</beans>

再加入一個配置beanspa

<util:properties id="propsConfig" location="classpath:props/config.properties" />

這樣,在用到的地方能夠直接code

@Value("#{propsConfig['my.config.string']}")
private String needToConfig;

配置文件config.properties中能夠寫成xml

my.config.string=configuredString

相似的樣子。這樣省掉了setter,在一處配置與使用,要方便點。string

相關文章
相關標籤/搜索