spring引入properties文件,并在controller等层获得引入文件中属性的值
2016-06-10 16:12
519 查看
引入配置文件方法一:
用context:property-placeholder引入配置文件<!-- 配置由spring读取jdbc的属性文件 --> <context:property-placeholder location="classpath:jdbc.properties,classpath:aaaaa.properties"/>
然后${...}取即可
<property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" />
引入配置文件方法二:
用PropertyPlaceholderConfigurer,在spring的xml文件中配置。2.1 使用场景一:
在配置数据库连接池的dataSource中引入jdbc.properties文件属性,很常用配置数据库连接池时,在datasource获取配置文件的属性可以参考以下两篇文章,我就不详细写了,只简要贴一点代码。
1 http://www.cnblogs.com/wanggd/archive/2013/07/04/3172042.html
2 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"可以这样写
@value("{a}") private String a;
呵呵,是不是很高大上呢。。。。使用场景还是比较多的。
注:debug后如果发现a没有注入值,在springmvc或者struts2的xml配置文件中加入
<context:property-placeholder location="classpath:aaaaac.properties"/>
(主要是父子容器的问题导致没有注入)
------------------------------------------2016-06-19更新-----------------------------------
我博客所有文章目录:http://blog.csdn.net/wabiaozia?viewmode=contents
相关文章推荐
- 解决struts 启动过程中出现的 Unable to load configuration错误 3ff8
- Java常用排序算法之堆排序
- Java多线程
- Spring Mvc那点事---(13)Spring Mvc之mybatis多表联合查询
- Java设计模式之抽象工厂模式
- Java多线程 之 Thread子类 join方法(五)
- java基础知识(四)--泛型
- Java 直接插入排序
- spring+springMVC+mybatis的配置文件和包
- java读取excel
- javaweb之框架标签(day1 框架标签的使用)
- java基础2
- Java finally语句到底是在return之前还是之后执行?
- RxJava学习入门
- SpringMVC之MVC的简介(七)
- spring 集成shiro 之 自定义过滤器
- Eclipse常用快捷键总结(必看篇)
- Increasing Java Heap Size — Out of memory error — java -Xmx3000M -Xms1500M -XshowSettings:all
- SpringMVC之MVC模型(六)
- 初识java线程池