JDBC教程+数据库连接池

本文介绍了JDBC的基本概念,包括其作用、优点以及如何在Java项目中使用它进行数据库操作。随后详细讲解了MySQL数据库驱动的下载与配置,以及如何通过JDBC实现增删改查。此外,还介绍了数据库连接池(以Druid为例)的概念、配置和使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JDBC

1.JDBC概述

​ JDBC,全称Java数据库连接(Java DataBase Connectivity),它是使用Java语言操作关系型数据库的一套API。

image-20240205211800441

​ JDBC本质是官方(原SUN公司,现ORACLE)定义的一套操作所有关系型数据库的规则,即接口。各个数据库公司去实现这套接口,提供数据库驱动的jar包。我们可以使用这套接口JDBC编程,真正执行的代码是驱动jar包中的实现类。

​ JDBC的优点:

  • 各数据库公司使用相同的接口,Java代码不需要针对不同数据库进行分别开发;
  • 可随时替换底层数据库,访问数据库的Java代码基本不变。

2.JDBC快速入门

**第一步:**下载mysql驱动包,下载地址:https://downloads.mysql.com/archives/c-j/,如下图:

**第二步:**创建Java项目,并在该项目下创建lib目录,并将解压后的驱动包放到该目录下,然后将该驱动包添加为库:

**第三步:**创建测试类:

package com.ztr;

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

/**
*  JDBC测试类
 */
public class JDBCDemo {
   

    public static void main(String[] args) throws Exception {
   

        // 第一步:注册驱动-mysql5.7后可省略该步骤
        Class.forName("com.mysql.jdbc.Driver");


        // 第二步:获取连接
        // 连接数据库的url为固定格式,包含主机IP、端口号、数据库名、是否使用SSL加密连接等
        String url = "jdbc:mysql://localhost:3306/student_system?useSSL=false&serverTimezone=UTC";
        // 数据库的用户名和密码
        String username = "root";
        String password = "root";
        Connection conn = DriverManager.getConnection(url, username, password);

        // 第三步:定义SQL语句
        String sql = "update tb_clazz set clazz_name = '2023软件技术1班' where id = 15";

        // 第四步:创建Statment对象,用于执行SQL
        PreparedStatement ps = conn.prepareStatement(sql);

        // 第五步:执行SQL,得到结果集
        int i = ps.executeUpdate();
        System.out.println("影响的行数为:" + i);
        // 第六步:释放资源-顺序:后创建的先释放
        ps.close();
        conn.close();

    }
}

3.练习

​ 使用JDBC代码对数据库进行增删改查操作。

4.数据库连接池

​ 数据库连接池就是一个容器,它负责分配、管理数据库的连接(Connection),它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个。

  • 优点:
    • 资源复用
    • 提升系统相应速度
    • 避免数据库连接遗漏

image-20240215170718888

​ 数据库连接池连接池的实现通过一个标准接口:DataSource,该接口由官方(SUN)提供,但实现由第三方组织实现该接口。因此,也出现了很多基于该接口的数据库连接池,如DBCP、C3P0、Druid等。在项目中常用的Druid(德鲁伊)连接池是阿里巴巴开源的数据库连接池项目,它功能强大、性能优秀,是Java语言最好的数据库连接池之一。

5.Druid连接池入门

**第一步:**下载连接池jar包,下载地址:https://repo1.maven.org/maven2/com/alibaba/druid/

image-20240215171621310

**第二步:**导入jar包到lib目录,并添加到库中:

image-20240215171810035

**第三步:**创建配置文件druid.properties,内容如下:

driverClassName=com.mysql.jdbc.Driver
url= dbc:mysql://localhost:3306/student_system?useSSL=false&serverTimezone=UTC
username=root
password=root
# 初始化连接池数量
initialSize=5
# 最大连接数
maxActive=10
# 最大等待时间
maxWait=3000

**第四步:**测试连接:

package com.ztr;

import com.alibaba.druid.pool.DruidDataSourceFactory;

import javax.sql.DataSource;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.sql.Connection;
import java.util.Properties;

/**
 * 德鲁伊连接池测试类
 **/
public class DruidDemo {
   

    public static void
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值