spring引入properties文件,并在controller等层获得引入文件中属性的值

目录(?)[+]

引入配置文件方法一:

用context:property-placeholder引入配置文件

[html]  view plain  copy
  1. <!-- 配置由spring读取jdbc的属性文件 -->  
  2. <context:property-placeholder location="classpath:jdbc.properties,classpath:aaaaa.properties"/>  

然后${...}取即可

[html]  view plain  copy
  1. <property name="driverClassName" value="com.mysql.jdbc.Driver" />  
  2. <property name="url" value="${jdbc.url}" />  
  3. <property name="username" value="${jdbc.username}" />  
  4. <property name="password" value="${jdbc.password}" />  

引入配置文件方法二:

PropertyPlaceholderConfigurer,spring的xml文件中配置

2.1 使用场景一:

在配置数据库连接池的dataSource中引入jdbc.properties文件属性,很常用


配置数据库连接池时,在datasource获取配置文件的属性可以参考以下两篇文章,我就不详细写了,只简要贴一点代码。

http://www.cnblogs.com/wanggd/archive/2013/07/04/3172042.html

http://blog.csdn.net/lawmansoft/article/details/7434134


要在spring的xml中引用properties文件中定义的属性,需要进行特殊的加载,利用PropertyPlaceholderConfigurer

典型配置如下:用PropertyPlaceholderConfigurer,在spring的xml文件中配置。
<bean id="common.propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="ignoreResourceNotFound" value="true" /><!--忽略未找到文件 -->
<property name="ignoreUnresolvablePlaceholders" value="true" />
<property name="fileEncoding" value="UTF-8" />
<property name="locations">
<list>
<value>classpath*:conf/default-*.properties</value>
<value>classpath*:conf/*.properties</value>

</list>
</property>
</bean>

这个是调用的locations的list赋值方式,也可以单独一条
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations" value="classpath:com/foo/jdbc.properties"/>
</bean>

properties中配置:
jdbc.driverClassName=org.hsqldb.jdbcDriver

下面的内容中,就可以通过
value="${jdbc.driverClassName}"
来访问properties的值

2.2  使用场景二:

controller等层怎么使用配置文件中的属性

例如:你在spring中引入了aaaaa.properties文件,aaaaa.properties文件中有一个属性a=http:8080。

当你想在controller定义一个变量的值为http:8080,如private String a="http:8080"可以这样写

[html]  view plain  copy
  1. @value("{a}")  
  2. private String a;  

呵呵,是不是很高大上呢。。。。使用场景还是比较多的。

注:debug后如果发现a没有注入值在springmvc或者struts2的xml配置文件中加入

[html]  view plain  copy
  1. <context:property-placeholder location="classpath:aaaaac.properties"/>  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值