Spring管理第三方数据源

推荐先阅读Spring全家桶

导入druid的依赖

<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.16</version>
</dependency>

加载properties文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<!-- 开启context命名空间 -->
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
<!-- 开启context命名空间 -->
http://www.springframework.org/schema/context
<!-- 开启context命名空间 -->
http://www.springframework.org/schema/context/spring-context.xsd">

<!-- 使用context命名空间,加载指定properties文件 -->
<context:property-placeholder location="jdbc.properties"/>
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<!-- 使用${}读取加载的属性值 -->
<property name="driverClassName" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
</beans>

jdbc.properties文件:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/spring_db
jdbc.username=root
jdbc.password=root

各种加载写法

<!-- 不加载系统属性 -->
<context:property-placeholder location="jdbc.properties" system-properties-mode="NEVER" />

<!-- 加载多个properties文件 -->
<context:property-placeholder location="jdbc.properties, msg.properties" />

<!-- 加载所有properties文件 -->
<context:property-placeholder location="*.properties" />

<!-- 加载properties文件标准格式 -->
<context:property-placeholder location="classpath:*.properties" />

<!-- 从类路径或jar包中搜索并加载properties文件 -->
<context:property-placeholder location="classpath*:*.properties" />