创建属性文件
在项目中,有时候需要把创建一些配置文件来存放支持不同业务功能的外围配置信息,比如连接数据库的信息,日志文件的存放位置等等。
但在bean初始化时需要去读取这些配置文件,在spring中可以使用*.properties来存放这些信息。在src文件夹下创建一个db.properties来存放数据库连接信息:
user=root
password=root
driverClass=com.mysql.jdbc.Driver
jdbcUrl=jdbc\:mysql\:///test
导入属性文件
使用context标签导入属性文件,在使用context标签之前需要引入这个标签的xmlns和xsd:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util"
xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util-4.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.2.xsd">
之后使用context:property-placeholder导入这个属性文件:
<context:property-placeholder location="classpath:db.properties"/>
导入C3P0数据源:
mysql-connector-java-5.1.7-bin.jar
mchange-commons-java-0.2.3.4.jar
c3p0-0.9.2.1.jar
配置连接数据库最基本的4个属性:
<bean id="datasource_c3p0" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="user" value="${user}"></property>
<property name="password" value="${password}"></property>
<property name="driverClass" value="${driverClass}"></property>
<property name="jdbcUrl" value="${jdbcUrl}"></property>
</bean>
最后进行测试:
@Test
public void testConfig() throws SQLException {
DataSource datasource = (DataSource) ctx.getBean("datasource_c3p0");
System.out.println(datasource.getConnection());
/**
* output:com.mchange.v2.c3p0.impl.NewProxyConnection@197d671
* */
}