Spring-7:使用外部属性文件
来源:互联网 发布:cn域名的ns记录 编辑:程序博客网 时间:2024/06/04 19:30
在配置文件里配置 Bean 时, 有时需要在 Bean 的配置里混入系统部署的细节信息(例如: 文件路径, 数据源配置信息等). 而这些部署细节实际上需要和 Bean 配置相分离。
Spring 提供了一个 PropertyPlaceholderConfigurer 的 BeanFactory 后置处理器, 这个处理器允许用户将 Bean 配置的部分内容外移到属性文件中. 可以在 Bean 配置文件里使用形式为 ${var} 的变量, PropertyPlaceholderConfigurer 从属性文件里加载属性, 并使用这些属性来替换变量。
这里要注意两点:
Spring 提供了一个 PropertyPlaceholderConfigurer 的 BeanFactory 后置处理器, 这个处理器允许用户将 Bean 配置的部分内容外移到属性文件中. 可以在 Bean 配置文件里使用形式为 ${var} 的变量, PropertyPlaceholderConfigurer 从属性文件里加载属性, 并使用这些属性来替换变量。
Spring 还允许在属性文件中使用 ${propName},以实现属性之间的相互引用。
使用方法:
首先需要创建一个属性文件
这里我们以car的配置为例:
在src目录下右击-new-file 创建文件名为:car.properties,然后在该文件中写入:
brand="land rover"
corp="BeiJing"
price=600000
maxSpeed=260
然后需要在xml文件中注册 PropertyPlaceholderConfigurer
在Spring2.0中:
在Spring 2.5 之后: 可通过 <context:property-placeholder> 元素简化这个步骤:
1、引入context命名空间:
2、导入属性文件
<!-- 导入属性文件 --><context:property-placeholder location="classpath:car.properties"/>
3、使用外部属性文件中的属性:
<!-- 使用外部属性文件中的属性 --><bean id="car" class="com.atguigu.spring.beans.Car"><property name="brand" value="${brand}"></property><property name="corp" value="${corp}"></property><property name="price" value="${price}"></property><property name="maxSpeed" value="${maxSpeed}"></property></bean>
这里要注意两点:
一是:在properties文本文件中数值类型不要加引号,字符串类型需要用引号引起来;
二是:在xml配置文件中,引用的变量仍需要用双引号引起来。比如:value="${brand}"
使用外部属性文件后,如果属性值发生变化,只需要修改properties文件即可,不需要修改源代码,增强了应用的可维护性。
0 0
- Spring-7:使用外部属性文件
- spring 使用外部属性文件
- Spring 使用外部属性文件
- Spring使用外部属性文件
- Spring使用外部属性文件
- spring-使用外部属性文件
- Spring 使用外部属性文件
- spring使用外部属性文件
- spring使用外部属性文件
- spring ioc之使用外部属性文件
- Spring IOC使用外部属性文件
- Spring 使用外部属性文件(连接数据库)
- Spring-Bean配置-使用外部属性文件
- Spring 中如何使用外部属性文件
- Spring-6 使用外部属性文件
- Spring-9 , 使用外部属性文件
- Spring-使用外部属性文件01
- 在spring中使用外部属性文件
- C# Cookie跨域实例
- Chromium MediaPlayer原理分析初步
- strcpy()
- java中URL和File的相互转化
- 如何设置MFC对话框背景的颜色
- Spring-7:使用外部属性文件
- SqlServer数据库正在还原的解决办法
- 韩国最大门户网站遭黑客挂马 专劫银行用户数据
- Activiti流程变量
- 去年校招的经验分享
- Android百分比布局Percent支持库
- iOS 上传数据到后台
- 点阵字体(也叫位图字体或光栅字体)、矢量字体
- ECMAScript 6 学习系列课程 (ES6 class的相关用法)