jdbc---数据库连接池学习

数据库连接池:类似于线程池一样的作用,用于管理数据库
一、数据库简介:
1、数据库是个容器,负责管理数据库连接池
如果有很多用户访问数据库,来一个用户现成的开一个数据库提供服务用户推出,然后关闭,但开启数据库连接是个非常耗时的工作,关闭同样耗费时间。我们就可以用数据库连接池在一个集合中提前申请很多个数据库的连接,将连接提前准备好,当一个用户来使用时我们就可以直接从容器提取一个连接conn,退出时直接归还,这样速度就会快很多,
1、资源重用,它允许应用程序重复使用一个现有的数据库,而不是在重新建立一个。
2、提升系统响应时间
3、避免数据库连接遗漏:释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库简介而引起的数据连接遗漏可以强制归还conn给容器

标准接口:Datasource
常见的数据库连接池:BDCP\C3p0\Druid
druid连接池是阿里巴巴开源的数据库连接池项目

二、druid数据库连接池技术:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class JDBCUtil {

    private static String URL = null;
    private static String DRIVERS = null;
    private static String USERNAME = null;
    private static String PASSWORD = null;

    static {

        try{
            URL = "jdbc:mysql://localhost:3306/blog";
            DRIVERS = "com.mysql.jdbc.Driver";
            USERNAME = "root";
            PASSWORD = "123456";

            Class.forName(DRIVERS);

        }catch (Exception e){
            e.printStackTrace();
        }
    }

    // 通过DriverManger获取连接对象
    public static Connection getConnection() throws SQLException{
        return DriverManager.getConnection(URL,USERNAME,PASSWORD);
    }

    public static void insert(String sql, Connection conn, PreparedStatement pre){
        try {
            pre = conn.prepareStatement(sql);
            pre.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    public static void clear(Connection conn, PreparedStatement pre){
        try {

            if(pre != null){
                pre.close();
            }

            if(conn != null){
                conn.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值