• C3P0使用


    数据库连接池

    • 在系统初始化时准备一定数量的连接
    • 使用时进行请求,使用后归还
      好处:避免频繁创建和销毁请求,提高响应速度
      一般,不会自己写数据库连接池,而是采用第三方数据库厂商的:比如C3P0和阿里巴巴的Druid(德鲁伊)。
      注意:使用第三方数据库连接池仍然要导入对应版本的mysql的jar包
      在javax.sql下提供了一个DataSource接口来制定标准。

    C3P0

    1、配置pom.xml
    c3p0有两个jar包

    <dependency>
      <groupId>com.mchange</groupId>
      <artifactId>mchange-commons-java</artifactId>
      <version>0.2.12</version>
    </dependency>
    <dependency>
      <groupId>com.mchange</groupId>
      <artifactId>c3p0</artifactId>
      <version>0.9.5.2</version>
    </dependency>
    

    2、配置文件
    两种形式:xml和properties均可,建议命名为c3p0-config.xml和c3p0.properties。有时候测试会默认加载,但有时加载无效。可以考虑直接指定。
    简单来说就是配置四个属性:user、password、driverClass、jdbcUrl
    (1)c3p0-config.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <c3p0-config>
        <default-config>
            <property name="user">root</property>
            <property name="password">3145tj</property>
            <property name="driverClass">com.mysql.cj.jdbc.Driver</property>
            <property name="jdbcUrl">jdbc:mysql://localhost:3306/study?useSSL=false&amp;serverTimezone=UTC&amp;characterEncoding=utf8</property>
        </default-config>
    </c3p0-config>
    

    (2)c3p0.properties

    user=root
    password=3145tj
    driverClass=com.mysql.cj.jdbc.Driver
    jdbcUrl=jdbc:mysql://localhost:3306/study?useSSL=false&amp;serverTimezone=UTC&amp;characterEncoding=utf8
    

    3、主要代码

    DataSource dataSource = new ComboPooledDataSource();
    Connection connection = dataSource.getConnection();
    

    4、不用配置文件,直接代码设置相关属性

    DataSource dataSource = new ComboPooledDataSource();
    ((ComboPooledDataSource) dataSource).setDriverClass("");
    ((ComboPooledDataSource) dataSource).setUser("");
    ((ComboPooledDataSource) dataSource).setPassword("");
    ((ComboPooledDataSource) dataSource).setJdbcUrl("");
    Connection connection = dataSource.getConnection();
    

    spring配置

    <!-- 配置c3p0连接池 -->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <!-- 注入属性值 -->
        <property name="driverClass" value="com.mysql.jdbc.Driver"></property>
        <property name="jdbcUrl" value="jdbc:mysql:///spring_day03"></property>
        <property name="user" value="root"></property>
        <property name="password" value="root"></property>
    </bean>
    
  • 相关阅读:
    CentOS 6.5、6.7 设置静态 ip 教程
    Nagios
    zabbix
    xml 的 <![CDATA["URL"]]>
    Don't make a promise when you are in Joy. Don't reply when you are Sad.Don't take decisions when you are Angry.Think Twice.Act Wise.
    DNS-2
    APM
    Time crumbles things; everything grows old under the power of Time and is forgotten through the lapse of Time
    CentOS 7 配置静态 ip
    AOP
  • 原文地址:https://www.cnblogs.com/heibaimao123/p/13800603.html
Copyright © 2020-2023  润新知