zoukankan      html  css  js  c++  java
  • C3P0连接池工具类实现步骤及方法

    C3P0连接池的工具类 使用C3P0获得连接对象
    连接池有一个规范接口 javax.sal.DataSourse 接口
    定义了一个从连接池中获得连接的方法
    getConnection();

    步骤
    导入jar包
    在成员变量位置创建一个静态的ComboPooledDtatSource 对象
    在静态代码块中使用ComboPooledDtatSource 对象 setxxxx方法 设置数据库连接
    定义一个静态方法 ComboPooledDtatSource 对象中获得数据库连接 Coonection
    释放资源(归还);
    方法类:

    package cn.sourceUntil;

    import com.mchange.v2.c3p0.ComboPooledDataSource;

    import java.beans.PropertyVetoException;
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;

    /*
    C3P0连接池的工具类 使用C3P0获得连接对象
    连接池有一个规范接口 javax.sal.DataSourse 接口
    定义了一个从连接池中获得连接的方法
    getConnection();
    步骤
    0. 导入jar包
    1. 在成员变量位置创建一个静态的ComboPooledDtatSource 对象
    2. 在静态代码块中使用ComboPooledDtatSource 对象 setxxxx方法 设置数据库连接
    3. 定义一个静态方法 ComboPooledDtatSource 对象中获得数据库连接 Coonection
    4. 释放资源(归还);
    */
    public class C3P0Utils {
    //1. 在成员变量位置创建一个静态的ComboPooledDtatSource 对象
    private static ComboPooledDataSource dataSource=new ComboPooledDataSource();
    //2. 在静态代码块中使用ComboPooledDtatSource 对象 setxxxx方法 设置数据库连接
    static {
    try {
    //设置注册驱动程序
    dataSource.setDriverClass("com.musql.jdbc.Dringver");
    //设置URL
    dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/day05");
    //设置数据库用户名
    dataSource.setUser("root");
    //设置数据库密码
    dataSource.setPassword("root");

    } catch (PropertyVetoException e) {
    e.printStackTrace();
    }
    }
    //3. 定义一个静态方法 ComboPooledDtatSource 对象中获得数据库连接 Coonection
    public static Connection getConnection(){

    try {
    return dataSource.getConnection();
    } catch (SQLException e) {
    throw new RuntimeException("数据库连接失败");
    }
    }
    //4. 释放资源(归还);
    public static void close(ResultSet rs, Statement stat,Connection conn){
    if (rs!=null){
    try {
    rs.close();
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    if (stat!=null){
    try {
    stat.close();
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    if (conn!=null){
    try {
    conn.close();//不是关 是归还
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    }
    }

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    测试类:

    package cn.cn.sourceTest;

    import cn.sourceUntil.C3P0Utils;
    import org.junit.Test;

    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;

    public class TestC3P0Until {
    @Test
    public void tes01() throws SQLException {
    //使用C3P0工具类 获得getConnection
    Connection conn = C3P0Utils.getConnection(http://www.my516.com);
    System.out.println(conn);
    Statement stat = conn.createStatement();
    ResultSet rs = stat.executeQuery("SELECT * FROM users");
    System.out.println("123456");
    //遍历结果集
    while (rs.next()){
    System.out.println(rs.getInt("cid")+rs.getString("pname")+rs.getString("pasword"));
    }
    //释放资源
    C3P0Utils.close(rs,stat,conn);

    }

    }

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    ---------------------

  • 相关阅读:
    【转】利用Python将多个PDF合并为一个
    sudo配置教程
    tomcat查看并修改jvm大小
    jetty隐藏版本号教程
    weblogic为同一domain下的不同server添加不同参数
    Oracle使用expdp/impdp导出导入数据
    Windows设置.txt文件默认打开程序
    weblogic查看版本号教程
    Linux登录超时自动退出处理办法
    telnet强制中断登录
  • 原文地址:https://www.cnblogs.com/hyhy904/p/11053808.html
Copyright © 2011-2022 走看看