Spring注入Properties文件中的配置

本文首发于我的博客:https://blog.wellcoding.win

我们都知道Spring可以注入各种对象,而有些时候,我们需要注入一些配置项,而不是一个对象。
可以发现Spring提供了一个PreferencesPlaceholderConfigurer类,可以方便的让我们使用注解将properties中的配置信息注入到对象中。

具体操作如下:

创建一个Maven项目,添加Spring Context依赖。
在Spring上下文的配置文件中声明org.springframework.beans.factory.config.PropertiesFactoryBeanorg.springframework.beans.factory.config.PreferencesPlaceholderConfigurer的实例。

<bean id="configProperties"
    class="org.springframework.beans.factory.config.PropertiesFactoryBean">
    <property name="locations">
        <list>
            <value>classpath*:*.properties</value>
        </list>
    </property>
</bean>
<bean id="propertyConfigurer"
    class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
    <property name="properties" ref="configProperties"/>
</bean>

然后在Java代码中使用@Value注解来取值。注意:相应的Java类也需要使用@Service@Component等声明由Spring管理。

@Value("#{configProperties['mysql.url']}")
private String url;

注解中的value值#{configProperties['mysql.url']}中的configProperties就是Spring上下文中org.springframework.beans.factory.config.PropertiesFactoryBean的实例ID,mysql.url就是properties中配置的key。

https://blog.wellcoding.win/2017/05/10/2017-05-10-spring-inject-properties.html

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值