properties 如果在 spring 中通过 PropertyPlaceholderConfigurer 加载,当spring 中需要 用到 properties 中的一些 key 和value 值时可以 利用 PorpertyPlaceholderConfiger 提供的$ 直接 取得。

PorpertyPlaceholderConfiger 有一些常用的属性,在一些高级应用中,可能会用到

  • locations
  • fileEncoding 属性文件的编码格式
  • order 文件中定义了多个PropertyPlaceholderConfigurer,则通过该属性指定优先顺序。
  • placeholderPrefix 默认前缀占位符是"${"。可以根据需要改为其它的前缀符。  --- 这个特点估计就是 spring 中能用${xxx} 取得 properties 文件中的内容的理由吧,即估计是spring只要看到 是 ${  占位符 就会 到 PropertyPlaceholderConfigurer 中去找其加载的 properties文件,从而 spring能用${}取得 properties 中属性值。
  • placeholdersuffix 默认后缀占位符是“}”。
  • 由于 PropertyPlaceholderConfigurer内置的功能非常丰富,如果它未找到${xxx}中定义的xxx键,它还会去JVM系统属性(System.getProperty())和环境变量(System.getenv())中寻找。通过启用systemPropertiesMode和searchSystemEnvironment属性,开发者能够控制这一行为。
  • ${} 还可以直接用在 java bean 上即用在类上,详见:http://www.cnblogs.com/wzhanke/p/4838890.html

举例如下:

<bean

class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath*:*.properties</value>
</list>
</property>
</bean>
 
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
  <property name="driverClass" value="${driverClass}"></property>   --->表明 properties文件中有 driverClass = aaa,通过${driverClass} 就能拿到 aaa值了
  <property name="jdbcUrl" value="${url}"></property>
</bean>
 
 

最新文章

  1. python网络编程-socket编程
  2. 【HDU】4773 Problem of Apollonius
  3. 纯jQuery-添加/修改/删除 标签,属性
  4. 崽崽帮www.zaizaibang.com精选3
  5. hbase 问题记录
  6. iOS:融云即时通讯快速集成
  7. 转!! Java中如何遍历Map对象的4种方法
  8. C#使用SqlDataReader读取数据库数据时CommandBehavior.CloseConnection参数的作用
  9. 关于iis站点无法读取 服务器共享目录的问题
  10. TextView 设置超过几行后显示省略号
  11. jboss7 加载module过程
  12. [Android学习笔记]组合控件的使用
  13. linux服务器部署jar包以及shell脚本的书写
  14. ubuntu18.04配置nvidia docker和远程连接ssh+远程桌面连接(二)
  15. bootstrap的 附加导航Affix导航 (侧边窄条式 滚动监控式导航) 附加导航使用3.
  16. echarts 移动端地图数据可视化开发教程
  17. JavaScript中map函数和filter的简单举例
  18. iOS 功能代码 上传到 远程 码云私有库
  19. springcloud---2
  20. JAVA二叉树递归构造、二叉树普通遍历及递归遍历

热门文章

  1. Journal of Proteome Research | Single-Shot Capillary Zone Electrophoresis−Tandem Mass Spectrometry Produces over 4400 Phosphopeptide Identifications from a 220 ng Sample (分享人:赵伟宁)
  2. swagger 报 i.s.m.parameters.AbstractSerializableParameter - Illegal DefaultValue null for parameter type integer java.lang.NumberFormatException: For input string
  3. dom&amp;JavaScript&amp;Jquery
  4. 题解 P3205 【[HNOI2010]合唱队】
  5. CF 997A
  6. coding++:JS/jQuery获取兄弟姐妹等元素
  7. NSObject常用方法
  8. mac 中使用git 和pycharm提交项目
  9. 图解JVM类加载机制和双亲委派模型
  10. cento升级openssl依旧显示老版本