配置数据库连接池(数据源)--------java利用BasicDataSource

DataSource又称为数据源,该类的目的是为了防止使用数据库时不必要操作带来的资源浪费,使用数据库时需要进行数据库连接,才可以使用数据库,使用数据库后,又要断开链接,用来释放资源。链接数据库和断开数据库连接浪费资源,而且在频繁操作数据库的时候,如果按照没有数据源的方式进行使用,就要频繁的连接数据库,断开数据库连接,做了很多没有必要的操作,即耽误时间,又浪费资源。

那么数据源是怎么做到不浪费资源的呢?

首先数据源先创建了一个数据库连接池,里面可以自己自由设计数据库连接池中连接的数量,当使用连接的时候直接在数据库连接池中获取,当不使用连接的时候不用断开,直接放到数据库连接池中,这就像是可回收垃圾一样,用完进行回收,可再度利用,不会浪费资源。

那么有人又想问,那么多连接放在连接池中,一直处于连接状态,是不是也是浪费资源呢?其实这是浪费资源的,但是咱们可以根据具体状况来设定数据库连接池中的连接数量,用来减少数据库连接所带来的资源浪费。

所以在创建数据源的时候会有许多的参数,在这里就不详细介绍了,在代码里在进行详细的说明,每个参数的作用。

首先创建一个数据库连接池。

在创建数据库连接池的时候,咱们必须要导入数据库连接池的jar包,目前咱们暂时采用Apache公司提供的jar包进行测试,具体jar包下载位置,如果有人要可以在下面留言,也可以去官方网站进行下载,具体类为BasicDataSource。

代码如下:

import org.apache.commons.dbcp.BasicDatasource;
import javax.sql.DataSource;

public class DBCPUtils{
    private static final String DRIVERNAME ="com.mysql.jc.jdbc.Driver";
    private static final String URL = "job:mysql://localhost:3306/acompe";
    private static final String USER = "root";
    private static final String PASSWORD = "root";
    private static BasicDataSource dataSource = new BasicDataSource();
    static{
        dataSource.setDriverClassName(DRIVERNAME);
        dataSource.setUrl(URL);
        dataSource.setUsername(USER);
        dataSource.setPassword(PASSWORD);
        dataSource.setMaxActive(20);                    //设置最大连接数
        dataSource.setInitialSize(10);                  //设置初始化连接数
        dataSource.setMaxIdel(8);                       //当空闲下载的时候,连接最大数量
        dataSource.setMinIdle(5);                       //当空闲时间过长后,变为最小空闲
    }
    public static Datasource getDataSource(){
        return dataSource;
    }
}

代码中,变量全部定义为static,并且定义静态代码块,当有程序调用该函数的时候,首先初始化静态代码块,直接就可以生成静态的dataSource,每次都可以直接通过该类获取到数据源,那么数据源获取到之后,就可以通过数据源获取连接了。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值