package com.itheima.utils;
 
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
 
import javax.sql.DataSource;
 
import com.alibaba.druid.pool.DruidDataSourceFactory;
 
/*
    1. 声明静态数据源成员变量
    2. 创建连接池对象
    3. 定义公有的得到数据源的方法
    4. 定义得到连接对象的方法
    5. 定义关闭资源的方法
 */
public class JdbcUtils {
    // 1.   声明静态数据源成员变量
    private static DataSource ds;
 
    // 2. 创建连接池对象
    static {
        // 加载配置文件中的数据
        InputStream is = JdbcUtils.class.getResourceAsStream("/druid.properties");
        Properties pp = new Properties();
        try {
            pp.load(is);
            // 创建连接池,使用配置文件中的参数
            ds = DruidDataSourceFactory.createDataSource(pp);
        } catch (IOException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
 
    // 3. 定义公有的得到数据源的方法
    public static DataSource getDataSource() {
        return ds;
    }
 
    // 4. 定义得到连接对象的方法
    public static Connection getConnection() throws SQLException {
        return ds.getConnection();
    }
 
    // 5.定义关闭资源的方法
    public static void close(Connection conn, Statement stmt, ResultSet rs) {
        if (rs != null) {
            try {
                rs.close();
            } catch (SQLException e) {}
        }
 
        if (stmt != null) {
            try {
                stmt.close();
            } catch (SQLException e) {}
        }
 
        if (conn != null) {
            try {
                conn.close();
            } catch (SQLException e) {}
        }
    }

    // 6.重载关闭方法
    public static void close(Connection conn, Statement stmt) {
        close(conn, stmt, null);
    }
}

  

driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/demo
username=root
password=root
initialSize=5
maxActive=10
maxWait=3000
maxIdle=6
minIdle=3

       2019-04-26

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

            再完美的程序都会存在漏洞!
                  ——深海藏有溺亡之鱼

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄