数据源对象管理:以druid为例

  1  pom.xml文件添加坐标

    <dependency>

      <groupId>com.alibaba</groupId>

      <artifactId>durid</artifactId>

      <version>1.1.16</version>

    </dependency>

  2  在applicationContext.xml文件中添加bean

    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">

      <property name="driveClassName" value="com.mysql.jdbc.Drive"/>
      <property name="url" value="jdbc:mysql://localhost:3306/spring_db"/>

      <property name="userName" value="root"/>

      <property name="passWord" value="root123456"/>

    </bean>

spring加载properties文件

  1  在bean配置中开启context命名的空间

    xmnls:context="http://www.srpingframework.org/schema/context"

    xsi:schemaLocation="

      http://www.srpingframework.org/schema/context

      http://www.srpingframework.org/schema/context/spring-context.xsd"

  2  使用context空间加载properties文件

    <context:property-placeholder location="jdbc.properties"/>

  3  把要使用的属性换成占位符

    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">

      <property name="driveClassName" value="${jdbc.drive}"/>
      <property name="url" value="${jdbc.url}"/>

      <property name="userName" value="${jdbc.username}"/>

      <property name="passWord" value="${jdbc.password}"/>

    </bean>

  4  注意事项

    ¤  当properties中定义的属性名和系统环境变量重名时,会使用系统环境变量的值

      ♦  解决方法:<context:property-placeholder location="jdbc.properties" system-properties-mode="NERVER"/>

    ¤  加载多个properties文件三种方式

      ♦  逗号隔开:<context:property-placeholder location="jdbc.properties,jdbc2.properties"/>

      ♦  *号通配符:<context:property-placeholder location="*.properties"/>

      ♦  规范方式*号通配符:<context:property-placeholder location="classpath:*.properties"/>

        注:此为规范方式。推荐使用。但此方式只能加载自己当前工程内的配置文件,不能加载导入jar包里的配置文件

      ♦  最标准方式:<context:property-placeholder location="classpath*:*.properties"/>

<property name="driveClassName" value=""/>