java propertysource_@PropertySouce注解

1.@ProtertySource

@PropertySouce是spring3.1开始引入的基于java config的注解。

通过@PropertySource注解将properties配置文件中的值存储到Spring的 Environment中,Environment接口提供方法去读取配置文件中的值,参数是properties文件中定义的key值。

2. 例子

比如有一个配置文件config.properties

jdbc.driver = oracle.jdbc.driver.OracleDriver

jdbc.url = jdbc\:oracle\:thin\:@(DESCRIPTION\=(ADDRESS\=(PROTOCOL\=TCP)(HOST\=10.221.129.208)(PORT\=1523))(CONNECT_DATA\=(SERVICE_NAME\=otatransuser)))

jdbc.username= sassy

jdbc.password = password

2.1  用法1- @PropertySource和@Value

创建java配置类

@Configuration

@PropertySource("classpath:jdbc.properties")public classPropertiesWithJavaConfig {

@Value(${jdbc.driver})privateString driver;

@Value(${jdbc.url})privateString url;

@Value(${jdbc.username})privateString username;

@Value(${jdbc.password})privateString password;

//要想使用@Value 用${}占位符注入属性,这个bean是必须的,这个就是占位bean,另一种方式是不用value直接用Envirment变量直接getProperty('key')

@Beanpublic staticPropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer() {return newPropertySourcesPlaceholderConfigurer();

}

}

2.2 用法2-通过Environment设置

@Configuration

@PropertySource("classpath:jdbc.properties")public classPropertiesWithJavaConfig {

@AutowiredprivateEnvironment env;

}

接着就可以用env.getProperty("jdbc.driver")得到相应的属性值

3.等同于在xml中配置properties文件

?xml version="1.0" encoding="UTF-8"?>

在Spring 4中,Spring提供了一个新的注解——@PropertySources,从名字就可以猜测到它是为多配置文件而准备的。

@PropertySources({

@PropertySource("classpath:config.properties"),

@PropertySource("classpath:db.properties")

})

public class AppConfig {

//something

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值