MySQL数据库 JDBC 编程(Java 连接 MySQL)

yizhihongxing

MySQL数据库 JDBC 编程(Java 连接 MySQL)攻略

1. 准备工作

在进行 MySQL JDBC 编程前,我们需要完成以下准备工作:

1.1 安装 MySQL 数据库

MySQL 数据库官网提供了各个平台下的安装包,我们可以根据自己的操作系统下载并安装 MySQL 数据库。

1.2 下载 MySQL JDBC 驱动

MySQL JDBC 驱动是连接 MySQL 数据库的重要工具,我们需要从官网下载稳定的 JDBC 驱动并放到 Java 项目的 classpath 路径下。

1.3 创建数据库和表

通过 MySQL 客户端或者第三方工具创建数据库和表,并在表中添加一些数据。

2. 编写 JDBC 程序

2.1 导入 JDBC 包

我们需要在 Java 项目中导入 JDBC 包,以便使用 JDBC 相关的类和方法。

import java.sql.*;

2.2 创建连接

在 JDBC 编程中,我们需要通过 DriverManger 类创建一个连接。需要传入的参数有数据库的 URL、用户名和密码。

String url = "jdbc:mysql://localhost:3306/mydatabase";
String user = "root";
String password = "password";
Connection conn = DriverManager.getConnection(url, user, password);

2.3 创建 Statement

通过 Connection 对象的 createStatement() 方法创建 Statement 对象,以便后续对数据库进行操作。

Statement stmt = conn.createStatement();

2.4 执行 SQL 语句

通过 Statement 对象的 executeQuery() 方法执行 SQL 语句并返回结果集。

String sql = "SELECT * FROM mytable";
ResultSet rs = stmt.executeQuery(sql);

2.5 处理结果集

通过 ResultSet 对象的 getXXX() 方法获取结果集中的数据。

while (rs.next()) {
    int id = rs.getInt("id");
    String name = rs.getString("name");
    int age = rs.getInt("age");
    System.out.println("id: " + id + ", name: " + name + ", age: " + age);
}

2.6 关闭连接和 Statement

在 JDBC 编程中,我们需要在完成操作后关闭连接和 Statement。可以在 finally 块中关闭连接和 Statement。

if (rs != null) {
    rs.close();
}
if (stmt != null) {
    stmt.close();
}
if (conn != null) {
    conn.close();
}

3. 示例

下面给出两个 Java 连接 MySQL 数据库的示例。

3.1 查询数据

import java.sql.*;

public class QueryData {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/mydatabase";
        String user = "root";
        String password = "password";
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        try {
            conn = DriverManager.getConnection(url, user, password);
            stmt = conn.createStatement();
            String sql = "SELECT * FROM mytable";
            rs = stmt.executeQuery(sql);
            while (rs.next()) {
                int id = rs.getInt("id");
                String name = rs.getString("name");
                int age = rs.getInt("age");
                System.out.println("id: " + id + ", name: " + name + ", age: " + age);
            }
        } 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();
            }
        }
    }
}

3.2 插入数据

import java.sql.*;

public class InsertData {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/mydatabase";
        String user = "root";
        String password = "password";
        Connection conn = null;
        Statement stmt = null;
        try {
            conn = DriverManager.getConnection(url, user, password);
            stmt = conn.createStatement();
            String sql = "INSERT INTO mytable (name, age) VALUES ('Alice', 20)";
            int rows = stmt.executeUpdate(sql);
            System.out.println("影响的行数:" + rows);
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            try {
                if (stmt != null) {
                    stmt.close();
                }
                if (conn != null) {
                    conn.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MySQL数据库 JDBC 编程(Java 连接 MySQL) - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • mybatis中的mapper.xml使用循环语句

    MyBatis是Java企业级应用中常用的持久化框架之一。在MyBatis中,mapper.xml是定义SQL语句的重要文件,循环语句是在mapper.xml中进行数据处理的常用方式之一。本文将从以下几个方面,详细讲解MyBatis中的mapper.xml使用循环语句的完整攻略: MyBatis中支持哪些类型的循环语句 MyBatis中如何编写循环语句 在M…

    Java 2023年5月20日
    00
  • 编码为GB2312网站让AJAX接收的数据显示支持中文

    为了让 AJAX 接收的数据支持中文,我们需要考虑两个方面:编码和显示。 编码 首先,我们需要将网站的编码设置为 GB2312。这可以通过在 HTML head 标签中添加以下代码实现: <meta http-equiv="Content-Type" content="text/html; charset=gb2312&q…

    Java 2023年6月15日
    00
  • Android Java crash 处理流程详解

    下面我来为你详细讲解“Android Java crash 处理流程详解”的完整攻略。 Android Java crash 处理流程详解 在Android开发中,我们经常会遇到应用程序由于各种原因而崩溃的情况。此时,我们需要进行相应的处理操作,才能有效减少应用程序的异常崩溃情况,提高用户体验。本文将详细介绍Android Java crash的处理流程,帮…

    Java 2023年5月25日
    00
  • Java工具类DateUtils实例详解

    Java工具类DateUtils实例详解 在Java开发中,经常会用到日期时间的操作。Java提供了丰富的日期时间类库,其中DateUtils工具类是常用的日期时间工具类之一。本文将详细介绍DateUtils的使用方法以及示例。 1. DateUtils类简介 DateUtils是Apache Commons Lang 3.0库中提供的日期时间工具类。它提供…

    Java 2023年6月1日
    00
  • JPA 使用criteria简单查询工具类方式

    JPA 使用 Criteria 简单查询工具类方式,具体步骤如下: 什么是Criteria查询 通常的JPQL查询必须要写类似于SELECT * FROM book WHERE id = 1 这样的SQL语句,书写SQL语句的时侯需要时刻注意SQL语句的拼写,如此繁琐而且费时费力,如果采用Criteria查询,则可以省去SQL语句的书写,Criteria查询…

    Java 2023年5月20日
    00
  • 图解Java经典算法冒泡选择插入希尔排序的原理与实现

    图解Java经典算法冒泡选择插入希尔排序的原理与实现 什么是排序算法? 排序算法是计算机科学中的一类基本算法,它将一个乱序的数据序列按照一定的规则重新排列,使得排序后的序列满足特定的要求。 常见的排序方法包括冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序等。 冒泡排序的原理和实现 冒泡排序是一种简单的排序算法,其基本思想是从小到大依次比较相邻的两…

    Java 2023年5月19日
    00
  • Java Spring Bean的生命周期管理详解

    Java Spring Bean的生命周期管理详解 简介 在使用Spring框架时,Bean(实例)的生命周期管理是非常重要的,它涉及到Bean的创建、初始化、依赖注入、方法调用、销毁等过程。本文将详细介绍Java Spring中Bean的生命周期管理机制,帮助读者更好地理解和使用Spring框架。 生命周期阶段 在Spring框架中,Bean的生命周期可以…

    Java 2023年5月31日
    00
  • Java MultipartFile实现上传文件/上传图片

    接下来我将为您详细讲解如何使用Java MultipartFile实现上传文件/上传图片的完整攻略。 什么是Java MultipartFile MultipartFile是Spring框架内置的一个接口,用于处理HTTP的多部分请求,用于上传文件/上传图片,它可以用于处理在表单中上传的文件,支持大文件上传和多文件上传。 实现上传文件/上传图片的完整攻略 下…

    Java 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部