硬编码方式实现DRUID连接池

沙海
沙海
沙海
164
文章
2
评论
2018年7月13日15:46:07 评论 97 1111字阅读3分42秒

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 案例效果

  • 正常获取连接

  • 获取连接超时

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

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

继续阅读
  • 资源分享QQ群
  • weinxin
  • 官方微信公众号
  • weinxin
沙海
  • 版权声明:本站是一个IT技术分享社区,沙海技术团队的技术分享社区,我们会经常分享资源和教程。
  • 转载请注明:硬编码方式实现DRUID连接池 - GYHQQ社区 ☜(ˆ▽ˆ)
C语言详细视频教程
C语言速查手册
Java图书管理系统
一个Java基础入门的教程视频
Docker使用命令备忘录 Java

Docker使用命令备忘录

安装Docker yum install docker 查看docker版本 docker -v 启动与停止docker 1、启动docker systemctl start docker 2、停止d...
工作中难以定位的BUG的Debug定位办法 Java

工作中难以定位的BUG的Debug定位办法

如图,  这几天公司由于修改技术债, 修改了不少代码, 为了保险起见, 在测试之前先自己调试了下代码, 结果出了大BUG, 基本上所有包含文件上传的接口都接收到的前台参数变成了"{}"的类型。Debu...
Navicat Premium最新版附激活教程 杂谈

Navicat Premium最新版附激活教程

Navicat Premium最新版附激活教程下载,程序员必备,强大的操作数据库软件,本分享附带注册机,按教程激活,如有问题可留言或者论坛发帖询问!官方原版,能永久激活,非常好用。 Navicat P...
匿名

发表评论

匿名网友 填写信息

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