Spring整合c3p0和druid数据库连接池

Spring整合c3p0和druid数据库连接池

1.数据库连接池的作用

  • 数据源(连接池)是提高程序性能如出现的
  • 事先实例化数据源,初始化部分连接资源
  • 使用连接资源时从数据源中获取
  • 使用完毕后将连接资源归还给数据源

常见的数据源(连接池):DBCP、C3P0、BoneCP、Druid等

2.数据源的开发步骤

  • 导入数据源的坐标和数据库驱动坐标
  • 创建数据源对象
  • 设置数据源的基本连接数据
  • 使用数据源获取连接资源和归还连接资源

3.手动创建数据源

1.导入c3p0和druid的坐标

<!-- C3P0连接池 -->
<dependency>   
	<groupId>c3p0</groupId>   
	<artifactId>c3p0</artifactId>   
	<version>0.9.1.2</version>
</dependency>
<!-- Druid连接池 -->
<dependency>   
	<groupId>com.alibaba</groupId>   
	<artifactId>druid</artifactId>   
	<version>1.1.10</version>
</dependency>

2.导入mysql数据库驱动坐标

<!-- mysql驱动 -->
<dependency>  
	<groupId>mysql</groupId>  
	<artifactId>mysql-connector-java</artifactId>  		
	<version>5.1.39</version>
</dependency>

3.手动创建c3p0连接池

/**
     * 手动创建c3p0连接池
     * <p>
     * 输出:
     * com.mchange.v2.c3p0.impl.NewProxyConnection@668bc3d5
     */
    @Test
    public void c3p0_test1() throws PropertyVetoException, SQLException {
   
        //创建数据源
        ComboPooledDataSource dataSource = new ComboPooledDataSource();
        //设置数据库连接参数
        dataSource.setDriverClass("com.mysql.jdbc.Driver");
        dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/test");
        dataSource.setUser("root");
        dataSource.setPassword("root");
        //获得连接对象
        Connection connection = dataSource.getConnection();
        System.out.println(connection);
    }

    /**
     * 读取jdbc.properties创建c3p0连接池
     * <p>
     * 输出:com.mchange.v2.c3p0.impl.NewProxyConnection@3cda1055
     */
    @Test
    public void c3p0_test2() throws PropertyVetoException, SQLException {
   
        //记载类路径下的jdbc.properties
        ResourceBundle rb = ResourceBundle.getBundle("jdbc");
        //创建数据源
        ComboPooledDataSource dataSource = new ComboPooledDataSource();
        //设置数据库连接参数
        dataSource.setDriverClass(rb.getString("jdbc.driver"));
        dataSource.setJdbcUrl(rb.getString("jdbc.url"));
        dataSource.setUser(rb.getString("jdbc.username"));
        dataSource.setPassword(rb
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值