1.PropertyPlaceholderConfigurer简介
Spring的框架中,类可以将.properties(key/value形式)文件中 ,一些动态设定的值(value),在XML中替换为占位该键($key$)的值, properties文件可以根据客户需求,自定义一些相关的参数,这样的设计可提供程序的灵活性。
2.基本使用方法
在Spring中,使用PropertyPlaceholderConfigurer可以在在springContext的配置文件中加入外部属性文件。
2.1 建立属性文件
在src目录/spring/include下的建立文件,内容如下:
jdbc_lms_url=jdbc\:oracle\:thin\:@10.168.167.19\:1621\:lms
jdbc_lms_driver=
jdbc_lms_user=abcd
jdbc_lms_password=adbcpasswd
2.2 springContext文件配置
springContext的配置文件中,加入下面代码
<!-- 读取单个配置文件 -->
<bean class="">
<property name="location">
<value>classpath:/spring/config/</value>
</property>
<property name="fileEncoding">
<value>UTF-8</value>
</property>
</bean>
加入数据库调用配置
<!-- 数据库连接池 -->
<bean class=""
destroy-method="close">
<property name="driverClassName">
<value>${jdbc_lms_driver}</value>
</property>
<property name="url">
<value>${jdbc_lms_url}</value>
</property>
<property name="username">
<value>${jdbc_lms_user}</value>
</property>
<property name="password">
<value>${jdbc_lms_password}</value>
</property>
<property name="maxActive" value="100"></property>
<property name="maxIdle" value="30"></property>
<property name="maxWait" value="500"></property>
<property name="defaultAutoCommit" value="true"></property>
</bean>
OK,一个数据源就设置完毕了。可以看出:PropertyPlaceholderConfigurer起的作用就是将占位符指向的数据库配置信息放在bean中定义的工具。
3.多个properties属性文件配置
<!-- 读取多个配置文件 -->
<bean class="">
<!--order属性表示加载顺序 -->
<property name="order" value="1"/>
<!--ignoreUnresolvablePlaceholders为是否忽略不可解析的Placeholder, 配置多个配置文件读取对象时,需要配置为true-->
<property name="ignoreUnresolvablePlaceholders" value="true" />
<property name="locations">
<list>
<value>classpath:/spring/config/</value>
<value>classpath:/spring/config/</value>
<value>classpath*:config/</value>
</list>
</property>
<property name="fileEncoding">
<value>UTF-8</value>
</property>
</bean>