dbcp数据库连接池管理

该包主要是管理数据库的链接,获取链接、释放连接、设置最大连接数、初始化连接数、回收的空闲时间

在连接数据库时创建一个连接池可以很方便的管理所有数据库链接,和高效的使用数据库连接。

主要的两个对象是BasicDataSource 和 BasicDataSourceFactory,产生BasicDataSource 和 DataSource两个数据源。

1)BasicDataSource  是在代码中进行配置,代码如下

BasicDataSource dataSource = new BasicDataSource();
        dataSource.setUrl("jdbc:mysql://localhost:3306/mydb?useSSL=true");
        dataSource.setDriverClassName("com.mysql.jdbc.Driver");
        dataSource.setUsername("root");
        dataSource.setPassword("123456");
        
        
        dataSource.setInitialSize(5);
        dataSource.setMaxActive(100);
        dataSource.setMaxIdle(300);
        
        try {
            Connection conn = dataSource.getConnection();
            
            conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }

2)BasicDataSourceFactory 根据配置文件产生 DataSource 对象,代码如下

Properties props = new Properties();
        InputStream inStream = this.getClass().getResourceAsStream("/db.properties");
        
        
        try {
            props.load(inStream);
            
            DataSource dataSource = BasicDataSourceFactory.createDataSource(props);
            
            Connection conn = dataSource.getConnection();
            String sql = "select * from user where id=?";
            QueryRunner qr = new QueryRunner();
            User user = qr.query(conn, sql, new BeanHandler<User>(User.class), 2);
            System.out.println(user);
            conn.close();
            
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
原文地址:https://www.cnblogs.com/zhaopengcheng/p/6682637.html