zoukankan      html  css  js  c++  java
  • dbcp数据库连接池的java实现

    1、准备

    • 导入jar包
      • commons-dbcp-1.4.jar
      • commons-pool-1.3.jar
      • 数据库驱动包,如:mysql-connector-java-5.1.28-bin.jar

    2、实现案例

    import java.io.IOException;
    import java.io.InputStream;
    import java.sql.Connection;
    import java.sql.SQLException;
    
    import org.apache.commons.dbcp.BasicDataSource;
    import org.junit.Test;
    
    /**
     * DBCP连接池
     *
     */
    public class Demo2 {
        @Test
        public void fun1() throws SQLException {
            /*
             * 1. 创建连接池对象
             * 2. 配置四大参数
             * 3. 配置池参数
             * 4. 得到连接对象
             */
            BasicDataSource dataSource = new BasicDataSource();
            dataSource.setDriverClassName("com.mysql.jdbc.Driver");
            dataSource.setUrl("jdbc:mysql://localhost:3306/mydb3");
            dataSource.setUsername("root");
            dataSource.setPassword("123");
            
            dataSource.setMaxActive(20);
            dataSource.setMinIdle(3);
            dataSource.setMaxWait(1000);
            
            Connection con = dataSource.getConnection();
            Connection con1 = new MyConnection(con);//装饰者模式
            System.out.println(con1.getClass().getName());
            
            /**
             * 连接池内部使用四大参数创建了连接对象!即mysql驱动提供的Connection
             * 连接池使用mysql的连接对象进行了装饰,只对close()方法进行了增强!
             * 装饰之后的Connection的close()方法,用来把当前连接归还给池!
             */
            con1.close();//把连接归还给池!
        }
    }
  • 相关阅读:
    php之工厂模式
    PHP 给GIF 缩略图实例代码
    WGS84 Mercator project转换的算法(C#)
    .net Enum用法
    Google Maps API编程资源大全
    结对作业
    使用Lightbox制作照片条
    使用css3中transition的页面切换
    使用css3中transition的页面切换(继续创新版)
    iframe中父窗口获取子窗口的元素
  • 原文地址:https://www.cnblogs.com/hehaiyang/p/4704633.html
Copyright © 2011-2022 走看看