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连接池设置相应的参数。文章源自JAVA秀-https://www.javaxiu.com/693.html
2.2.2 案例步骤
- 导入jar包
druid-1.0.9.jar
- 创建连接池对象DruidDataSource对象
- 设置连接参数:driverClassName , url, username, password
- 设置连接池参数
- 初始连接数initialSize
- 最大连接数maxActive
- 最大等待时间maxWait
- 最小空闲连接minIdle
- 获取连接对象(
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 案例效果
- 正常获取连接
文章源自JAVA秀-https://www.javaxiu.com/693.html
- 获取连接超时
文章源自JAVA秀-https://www.javaxiu.com/693.html
- 使用连接池中连接执行SQL语句
文章源自JAVA秀-https://www.javaxiu.com/693.html
文章源自JAVA秀-https://www.javaxiu.com/693.html总结:使用纯代码获取配置DRUID连接池的弊端,所有配置信息都写在代码中。一旦需要改配置信息,就需要改动源代码,非常麻烦。文章源自JAVA秀-https://www.javaxiu.com/693.html
继续阅读
文章末尾固定信息...

资源分享QQ群
本站是JAVA秀团队的技术分享社区, 会经常分享资源和教程; 分享的时代, 请别再沉默!
评论