【JavaSE专栏90】用最简单的方法,使用 JDBC 连接 MySQL 数据库

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介: 【JavaSE专栏90】用最简单的方法,使用 JDBC 连接 MySQL 数据库

本文讲解了如何使用 JDBC 连接 MySQL 数据库,并给出了样例代码。JDBC 是 Java 语言访问关系型数据库的一种标准 API,它提供了一组用于在 Java 程序中与数据库进行交互的接口和类。


一、什么是 JDBC

JDBC 是 Java 语言访问关系型数据库的一种标准 API,它提供了一组用于在 Java 程序中与数据库进行交互的接口和类。

通过 JDBC,开发人员可以使用 Java 语言编写代码,连接到数据库服务器、执行 SQL 语句、处理查询结果和事务等。

JDBC的主要特点包括以下 4 44 点,请同学们认真学习。

  1. 简单易用:JDBC 提供了一组直观的接口和类,使开发人员能够方便地连接数据库、发送 SQL 语句和处理结果。
  2. 广泛支持:JDBC 可以与各种关系型数据库进行交互,如 Oracle、MySQL、SQL Server、PostgreSQL等。
  3. 独立性:JDBC 是基于 Java 标准的 API,可以在不同的平台上使用,不受特定数据库厂商的限制。
  4. 安全性:JDBC 提供了对数据库连接的安全管理,可以对连接进行认证和授权。

使用 JDBC 的基本步骤包括,请同学们尝试使用 JDBC。

  1. 加载数据库驱动程序:使用 Class.forName() 方法加载 JDBC 驱动程序,将其注册到 JVM 中。
  2. 建立数据库连接:使用 DriverManager.getConnection() 方法建立与数据库服务器的连接,并提供连接 URL、用户名和密码等参数。
  3. 创建 StatementPreparedStatement 对象:使用连接对象的 createStatement()prepareStatement() 方法创建用于执行 SQL 语句的对象。
  4. 执行 SQL 语句:使用 StatementPreparedStatement 对象的 executeQuery()executeUpdate() 等方法执行 SQL 语句。
  5. 处理查询结果:对于查询语句,使用ResultSet对象获取查询结果,并对结果进行处理。
  6. 关闭资源:在使用完 JDBC 对象后,需要显式地关闭连接、Statement、ResultSet 等资源,以释放数据库和 JDBC 资源。

JDBC 提供了一种灵活且强大的方式来在 Java 程序中与数据库进行交互,使开发人员能够轻松地操作和管理数据库。


二、什么是 MySQL

MySQL 是一种开源的关系型数据库管理系统,MySQL 广泛应用于各种规模的应用程序和网站中,包括企业级应用和个人网站,MySQL 具有以下 8 88 个特点,请同学们认真学习。

  1. 开源性:MySQL 是免费提供的开源软件,用户可以自由使用、修改和分发。
  2. 可靠性:MySQL 经过广泛测试和验证,具有高度可靠性和稳定性,能够处理大规模数据和高并发访问。
  3. 跨平台性:MySQL 支持多个操作系统,包括 Windows、Linux、macOS 等,可以在不同平台上运行。
  4. 高性能:MySQL 在设计上注重性能优化,采用了多种技术来提高数据库的响应速度和处理能力。
  5. 简单易用:MySQL 提供了简单且直观的命令和工具,使用户可以方便地管理和操作数据库。
  6. 安全性:MySQL 提供了多种安全机制,包括用户认证、权限管理、数据加密等,以保护数据库的安全性。
  7. 扩展性:MySQL 支持水平和垂直扩展,可以通过集群架构和分区技术来处理大规模数据和高并发访问。
  8. 丰富的功能:MySQL 提供了丰富的功能和特性,包括事务处理、索引优化、存储过程、触发器、视图等。

MySQL 使用标准的 SQL 语言进行数据库的操作和查询,具有良好的兼容性,并且支持多种编程语言的接口和 API,如 Java、Python、PHP 等。由于其开源、可靠和高性能的特点,MySQL 成为了最受欢迎的关系型数据库之一,被广泛应用于各种 Web 应用、企业级系统和云平台中。


三、JDBC 连接 MySQL

以下是一个简单的 Java 样例代码,用于连接 MySQL 数据库并执行查询操作,请同学们复制到本地执行。

说明:以下代码仅为本地数据的测试连接数据,不包含真实项目的密匙、口令!

import java.sql.*;
public class JDBCExample {
    public static void main(String[] args) {
        // JDBC连接信息
        String url = "jdbc:mysql://localhost:3306/demo"; // 数据库连接URL
        String username = "root"; // 数据库用户名
        String password = "123456"; // 数据库密码
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        try {
            // 加载JDBC驱动程序
            Class.forName("com.mysql.cj.jdbc.Driver");
            // 建立数据库连接
            conn = DriverManager.getConnection(url, username, password);
            // 创建Statement对象,用于执行SQL语句
            stmt = conn.createStatement();
            // 执行SQL查询语句
            String sql = "SELECT * FROM employees";
            rs = stmt.executeQuery(sql);
            // 处理查询结果
            while (rs.next()) {
                int id = rs.getInt("id");
                String name = rs.getString("name");
                double salary = rs.getDouble("salary");
                System.out.println("ID: " + id + ", Name: " + name + ", Salary: " + salary);
            }
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            // 关闭资源
            try {
                if (rs != null) rs.close();
                if (stmt != null) stmt.close();
                if (conn != null) conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

这个例子展示了使用 JDBC 连接 MySQL 数据库并执行查询操作的基本步骤。

首先,我们加载 MySQL 驱动程序,然后建立与数据库的连接。

接下来,我们创建一个 Statement 对象来执行 SQL 查询语句,并通过 executeQuery 方法执行查询操作。

最后,我们通过 ResultSet 对象处理查询结果,并进行相应的操作。

在完成数据库操作后,我们需要关闭连接、Statement 和 ResultSet 等资源。


四、JDBC的应用场景

JDBC 在 Java 应用程序中有广泛的应用场景,主要包括以下 6 66 个方面,请同学们认真学习。

  1. 数据库连接与操作:JDBC 可以用于与关系型数据库进行连接和操作。开发人员可以使用 JDBC API 建立数据库连接、执行 SQL 语句、处理查询结果、事务管理等。
  2. 数据库访问层:JDBC 可以作为 Java 应用程序与数据库之间的中间层,封装数据库操作,提供高层次的接口和方法,方便应用程序开发。这样可以使应用程序与底层数据库相分离,提高了应用程序的可维护性和可移植性。
  3. 数据库迁移和同步:JDBC 可以用于数据库迁移和数据同步的工作。通过 JDBC,可以将数据从一个数据库迁移到另一个数据库,也可以将数据从一个数据源同步到另一个数据源。
  4. 数据库连接池:JDBC 连接池是一种常见的技术,用于管理数据库连接的复用和分配。通过使用连接池,可以提高数据库连接的效率和性能,减少连接的创建和销毁开销。
  5. 数据库报表和分析:JDBC 可以用于从数据库中获取数据,并进行报表生成和数据分析。通过执行查询语句,获取结果集,然后对结果集进行处理和分析,生成报表或进行其他数据分析操作。
  6. 数据库备份和恢复:JDBC 可以用于数据库备份和恢复操作。通过执行数据库备份命令,将数据库的数据和结构保存到文件中;通过执行数据库恢复命令,将备份文件中的数据和结构恢复到数据库中。

总之,JDBC 的应用场景非常广泛,几乎所有需要与关系型数据库进行交互的 Java 应用程序都可以使用 JDBC 来实现。

无论是简单的数据查询,还是复杂的事务处理,JDBC 都能提供灵活且强大的功能来满足开发人员的需求。


五、JDBC 连接MySQL 面试题

一、如何在 Java 中使用 JDBC 连接 MySQL 数据库?

答:要使用JDBC连接MySQL数据库,首先需要导入MySQL的JDBC驱动程序。然后,通过加载驱动程序、建立数据库连接、执行SQL语句等步骤来连接和操作数据库。

二、JDBC 连接 MySQL 的步骤是什么?

答:连接MySQL数据库的步骤如下:

  • 加载 JDBC 驱动程序:使用 Class.forName() 方法加载 MySQL 的 JDBC 驱动程序。
  • 建立数据库连接:使用 DriverManager.getConnection() 方法建立与 MySQL 数据库的连接。
  • 创建 Statement 对象:使用 Connection.createStatement() 方法创建 Statement 对象,用于执行 SQL 语句。
  • 执行 SQL 语句:使用 Statement 对象的 executeQuery() 方法执行查询语句,或者使用 executeUpdate() 方法执行更新语句。
  • 处理结果集:使用 ResultSet 对象来处理查询结果。
  • 关闭连接和资源:在完成数据库操作后,需要关闭连接、Statement 和 ResultSet 等资源。

三、如何处理 JDBC 连接 MySQL 时的异常?

答:在使用 JDBC 连接 MySQL 时,可能会遇到各种异常情况,如数据库连接失败、SQL 语句执行错误等。可以通过 try-catch 语句块来捕获异常,并在 catch 块中处理异常情况,如打印错误信息、回滚事务等。

四、如何使用连接池管理 JDBC 连接 MySQL?

答:使用连接池可以提高数据库连接的效率和性能。常见的连接池实现包括 Apache Commons DBCP、C3P0、HikariCP 等。可以通过配置连接池的参数,如最大连接数、最小空闲连接数等,来管理连接池中的连接。通过从连接池中获取连接、执行 SQL 语句、释放连接等操作,实现 JDBC 连接 MySQL 的连接池管理。

五、如何处理 JDBC 连接 MySQL 时的事务?

答:可以通过设置连接的事务隔离级别、使用 setAutoCommit(false) 方法关闭自动提交,以及使用 commit()rollback() 方法来管理事务。通过在 try-catch 块中进行事务处理,可以在发生异常时回滚事务,保持数据的一致性。


六、总结

本文讲解了如何使用 JDBC 连接 MySQL 数据库,并给出了样例代码,在最后一篇博客中,将讲解如何使用 Java 发起 Http 请求,从而实现与三方网站的整合。


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
397
分享
相关文章
【YashanDB知识库】共享从 MySQL异常处理CONTINUE HANDLER的改写方法
【YashanDB知识库】共享从 MySQL异常处理CONTINUE HANDLER的改写方法
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
YashanDB数据库服务端SSL连接配置
YashanDB支持通过SSL连接确保数据传输安全,需在服务端生成根证书、服务器证书及DH文件,并将根证书提供给客户端以完成身份验证。服务端配置包括使用OpenSSL工具生成证书、设置SSL参数并重启数据库;客户端则需下载根证书并正确配置环境变量与`yasc_env.ini`文件。注意:启用SSL后,所有客户端必须持有根证书才能连接,且SSL与密码认证独立运行。
【Oracle】使用Navicat Premium连接Oracle数据库两种方法
以上就是两种使用Navicat Premium连接Oracle数据库的方法介绍,希望对你有所帮助!
179 28
大数据新视界--大数据大厂之MySQL数据库课程设计:MySQL 数据库 SQL 语句调优方法详解(2-1)
本文深入介绍 MySQL 数据库 SQL 语句调优方法。涵盖分析查询执行计划,如使用 EXPLAIN 命令及理解关键指标;优化查询语句结构,包括避免子查询、减少函数使用、合理用索引列及避免 “OR”。还介绍了索引类型知识,如 B 树索引、哈希索引等。结合与 MySQL 数据库课程设计相关文章,强调 SQL 语句调优重要性。为提升数据库性能提供实用方法,适合数据库管理员和开发人员。
在C++的QT框架中实现SQLite数据库的连接与操作
以上就是在C++的QT框架中实现SQLite数据库的连接与操作的基本步骤。这些步骤包括创建数据库连接、执行SQL命令、处理查询结果和关闭数据库连接。在实际使用中,你可能需要根据具体的需求来修改这些代码。
110 13
在Ubuntu系统的Docker上安装MySQL的方法
以上的步骤就是在Ubuntu系统的Docker上安装MySQL的详细方法,希望对你有所帮助!
91 12
MySQL细节优化:关闭大小写敏感功能的方法。
通过这种方法,你就可以成功关闭 MySQL 的大小写敏感功能,让你的数据库操作更加便捷。
123 19
MySQL Binlog 日志查看方法及查看内容解析
本文介绍了 MySQL 的 Binlog(二进制日志)功能及其使用方法。Binlog 记录了数据库的所有数据变更操作,如 INSERT、UPDATE 和 DELETE,对数据恢复、主从复制和审计至关重要。文章详细说明了如何开启 Binlog 功能、查看当前日志文件及内容,并解析了常见的事件类型,包括 Format_desc、Query、Table_map、Write_rows、Update_rows 和 Delete_rows 等,帮助用户掌握数据库变化历史,提升维护和排障能力。
【YashanDB知识库】MySQL field 函数的改写方法
【YashanDB知识库】MySQL field 函数的改写方法

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等