首页 / 操作系统 / Linux / Spring xml 配置使用外部config 文件
Spring xml 配置使用外部config 文件
当使用spring framework后, 我们一般会把db connection的信息写在spring的bean config xml里面。例如:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"><property name="user" value="testUser1"></property><property name="password" value="12345678"></property><property name="driverClass" value="com.mysql.jdbc.Driver"></property><property name="jdbcUrl" value="jdbc:mysql://homeServer:3306"></property></bean> </beans>但是在项目中, 我们的程序一般在不同的环境中运行,如果每次都去修改xml就会出现如下的问题。1.容易出错2.需要重新打包(xml在包里的话)3.程序猿会见到密码等敏感信息。所以我们一般会把项目deployment的信息例如db Conection写在 外部的1个 config file中。例子
首先在系统中随便1个位置建立1个config 文件:
/home/gateman/Studies/java_start/configfiles/MySQL.configuser=testUser1password=12345678driver=com.mysql.jdbc.Driverurl=jdbc:mysql://homeServer:3306<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><property name="location" value="file:/home/gateman/Studies/java_start/configfiles/mysql.config"></property></bean>注意 上面的location value就是配置文件的位置
file:xxx 代表绝对路径
classpath: xxx 代表类路径最后, 在dataSoruce 这个bean就可以引用config file的值了
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><property name="location" value="file:/home/gateman/Studies/java_start/configfiles/mysql.config"></property></bean><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"><property name="user" value="${user}"></property><property name="password" value="${password}"></property><property name="driverClass" value="${driver}"></property><property name="jdbcUrl" value="${url}"></property></bean> </beans>本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-12/138193.htm