硬编码方式实现DRUID连接池

  • A+
所属分类:Java SQL MySql Oracle JavaWeb

DRUID连接池

2.1 准备数据

CREATE TABLE student (
  id INT PRIMARY KEY AUTO_INCREMENT,
  NAME VARCHAR(20),
  age INT,
  score DOUBLE DEFAULT 0.0
);

2.2 硬编码方式实现DRUID连接池

2.2.1 案例需求

使用代码给DRUID连接池设置相应的参数。

2.2.2 案例步骤

  1. 导入jar包druid-1.0.9.jar
  2. 创建连接池对象DruidDataSource对象
  3. 设置连接参数:driverClassName , url, username, password
  4. 设置连接池参数
    1. 初始连接数initialSize
    2. 最大连接数maxActive
    3. 最大等待时间maxWait
    4. 最小空闲连接minIdle
  5. 获取连接对象(getConnection()方法)

2.2.3 案例代码

public class Demo02 {
    public static void main(String[] args) throws Exception {
        DruidDataSource ds = new DruidDataSource();
        
        // 设置置连接参数
        ds.setDriverClassName("com.mysql.jdbc.Driver");
        ds.setUrl("jdbc:mysql://127.0.0.1:3306/day25");
        ds.setUsername("root");
        ds.setPassword("root");
        
        // 设置连接池参数
        ds.setInitialSize(5);
        ds.setMaxActive(10);
        ds.setMaxWait(3000);
        ds.setMinIdle(3);
        
        // 从连接池中取出连接
        Connection conn = ds.getConnection();
        
        // 执行SQL语句
        String sql = "INSERT INTO student VALUES (NULL, ?, ?, ?);";
        PreparedStatement pstmt = conn.prepareStatement(sql);
        pstmt.setString(1, "王五");
        pstmt.setInt(2, 35);
        pstmt.setDouble(3, 88.5);
        
        int i = pstmt.executeUpdate();
        System.out.println("影响的行数: " + i);
        
        pstmt.close();
        conn.close(); // 将连接还回连接池中
    }
}

2.2.4 案例效果

  • 正常获取连接

硬编码方式实现DRUID连接池

  • 获取连接超时

硬编码方式实现DRUID连接池

  • 使用连接池中连接执行SQL语句

硬编码方式实现DRUID连接池

总结:使用纯代码获取配置DRUID连接池的弊端,所有配置信息都写在代码中。一旦需要改配置信息,就需要改动源代码,非常麻烦。

  • 资源分享QQ群
  • weinxin
  • 官方微信公众号
  • weinxin
沙海
AnyNode:最便宜的国外服务器
Linux服务器网站环境安装
C语言郝斌老师教程
动力节点最牛Java自学基础教程

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: