第一章:下载
要下载三个东西:commons pool、commons log、dbcp
dbcp中有些东西是依赖于commons pool 和 commons log 的。
缺一不可,否则无法正确运行使用dbcp!
commons pool下载地址:https://commons.apache.org/proper/commons-pool/download_pool.cgi
commons log下载地址:https://commons.apache.org/proper/commons-logging/download_logging.cgi
dbcp下载地址:https://commons.apache.org/proper/commons-dbcp/download_dbcp.cgi

或者直接点下面这三个直链下载就可以了。(三个文件都要下载)
文件结构:



有用的是:
commons-dbcp2-2.9.0.jar
commons-pool2-2.11.1.jar
commons-logging-1.2.jar
分别导入jar包即可。
第二章:使用dbcp数据源
import org.apache.commons.dbcp2.BasicDataSource;
import java.sql.Connection;
import java.sql.SQLException;
public class dbcp_test {
    private static final String CURL = "jdbc:mysql://localhost:3306/jdbc_01?useUnicode=true&characterEncoding=UTF8";
    private static final String USERNAME = "root";
    private static final String PASSWORD = "88888888";
    private static BasicDataSource ds;
    static {
        ds = new BasicDataSource();
        ds.setDriverClassName("com.mysql.cj.jdbc.Driver");
        ds.setUrl(CURL);
        ds.setUsername(USERNAME);
        ds.setPassword(PASSWORD);
        //设置一开始的连接池对象数
        ds.setInitialSize(5);
        //设置最大连接数
        ds.setMaxTotal(20);
        //设置空闲链接
        ds.setMinIdle(3);
    }
    public static Connection getConnection(){
        try {
            return ds.getConnection();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return null;
    }
    //注意,这里的关闭并不会真正的关闭con,因为我们的数据源dbcp重写了connection中的close()
    //相当于归还con连接到连接池中
    public static void close(Connection con){
        try {
            con.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    
}
这样一来,我们新的dbcp_test完全取代JDBCUtils工具包。
下一节,我们介绍c3p0数据源,c3p0更牛逼一点哦!
                    
                
                
            
        
浙公网安备 33010602011771号