【SSM】spring配置文件中读取配置文件的三种方式

依赖

        <!--mysql-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.46</version>
        </dependency>
        <!--jdbc:spring对原始JDBC进行封装与扩展,mybatis依赖它进行底层操作,即mybatis本质还是使用jdbc-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>${springMVC.version}</version>
        </dependency>
        <!--数据库连接池
        程序和数据库建立连接是需要花费一定的时间的
        当程序启动的时候,初始化连接池,预先建立既定的N条数据库连接,然后放入连接池中
        当程序使用的时候从连接池获取连接就好了,就不需要花费太多的时间在建立数据库连接上,
        程序用完后,连接放回连接池-->
            <!--Apache的C3P0-->
        <dependency>
            <groupId>com.mchange</groupId>
            <artifactId>c3p0</artifactId>
            <version>0.9.5.2</version>
        </dependency>
            <!--Apache的dbcp-->
        <dependency>
            <groupId>commons-dbcp</groupId>
            <artifactId>commons-dbcp</artifactId>
            <version>1.4</version>
        </dependency>
            <!--阿里巴巴的druid-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.10</version>
        </dependency>

jdbc.properties

driverClass = com.mysql.jdbc.Driver
jdbcUrl = jdbc:mysql:///crm?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimeZone=UTC
# 注意:不要写成username,否则使用${username}可能是获取操作系统的用户名
name=root
password=csbt34.

applicationContext.xml(spring配置文件)

以下使用spring的P命名规则来简化属性的配置书写

<!--读取properties文件的三种方式:是利用反射技术将properties文件属性读取,然后封装到Properties对象属性中-->
    <util:properties location="classpath:jdbc.properties" id="jdbc" />
    <context:property-placeholder location="classpath:jdbc.properties" file-encoding="utf-8"/>
    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
        p:location="classpath:jdbc.properties"
    />
<!--配置连接池:做的是JDBC的DBUtil中的事情,加载驱动、链接数据库、关闭资源-->
    <!--C3P0连接池-->
    <bean id="c3p0DataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
          p:driverClass="${driverClass}"
          p:jdbcUrl="${jdbcUrl}"
          p:user="${name}"
          p:password="${password}"
    />
    <!--dbcp连接池-->
    <bean id="dbcpDataSource" class="org.apache.commons.dbcp.BasicDataSource"
          p:driverClassName="${driverClass}"
          p:url="${jdbcUrl}"
          p:username="${name}"
          p:password="${password}"
    />
    <!--druid连接池-->
    <bean id="druidDataSource" class="com.alibaba.druid.pool.DruidDataSource"
          p:driverClassName="${driverClass}"
          p:url="${jdbcUrl}"
          p:username="${name}"
          p:password="${jdbcUrl}"
    />
posted @ 2020-04-03 14:53  叶荒  阅读(2635)  评论(0编辑  收藏  举报