Java连接MySQL数据库示例

一、准备工作

在进行Java连接MySQL数据库之前,需要进行一些准备工作:

1、下载MySQL驱动包

可以到MySQL官网下载最新的MySQL Connector/J驱动包。下载完毕后,将其解压缩到本地磁盘中。

2、安装MySQL服务器

在安装服务器时,需要给服务器设置一个账号和密码。这个账号和密码将用于在Java程序中连接MySQL服务器。

3、创建数据库

在MySQL中,可以通过命令行或者其他MySQL查询工具创建数据库。在创建完毕后,需要记住数据库的名称。

二、连接MySQL数据库

在Java中连接MySQL数据库需要先加载MySQL驱动程序,然后根据数据库连接信息创建连接对象,并建立连接。以下是具体实现:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class MySQLConnectionExample {

    public static void main(String[] args) {
        Connection conn = null;
        try {
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/testdb", "username", "password");
            if(conn != null) {
                System.out.println("Connected to the database");
            }
        } catch (SQLException ex) {
            System.out.println("An error occurred while connecting MySQL database");
            ex.printStackTrace();
        } catch (ClassNotFoundException ex) {
            System.out.println("MySQL Driver not found");
            ex.printStackTrace();
        }
    }
}

其中,conn = DriverManager.getConnection(url, user, password)方法用于建立与MySQL数据库的连接,方法的三个参数分别表示连接URL、MySQL数据库连接用户名和密码。在连接MySQL数据库之前,需要先通过Class.forName()方法注册MySQL驱动程序。

三、关闭连接对象

连接MySQL数据库后,需要关闭连接对象,以释放资源。以下是具体实现:

...
finally {
    if(conn != null) {
        try {
            conn.close();
        } catch (SQLException ex) {
            ex.printStackTrace();
        }
    }
}
...

finally模块中关闭连接对象,并释放资源。

四、执行SQL语句

连接MySQL数据库之后,可以通过Java程序执行SQL语句。以下是具体实现:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class MySQLQueryExample {

    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        
        try {
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/testdb", "username", "password");
            if(conn != null) {
                System.out.println("Connected to the database");
            }
            
            stmt = conn.createStatement();
            rs = stmt.executeQuery("SELECT employee_id, first_name, last_name FROM employees");
            while (rs.next()) {
                System.out.println(rs.getString("employee_id") + "  " +
                                   rs.getString("first_name") + "  " + rs.getString("last_name"));
            }
        } catch (SQLException ex) {
            System.out.println("An error occurred while connecting MySQL database");
            ex.printStackTrace();
        } catch (ClassNotFoundException ex) {
            System.out.println("MySQL Driver not found");
            ex.printStackTrace();
        } finally {
            if(rs != null) {
                try {
                    rs.close();
                } catch (SQLException ex) {
                    ex.printStackTrace();
                }
            }
            if(stmt != null) {
                try {
                    stmt.close();
                } catch (SQLException ex) {
                    ex.printStackTrace();
                }
            }
            if(conn != null) {
                try {
                    conn.close();
                } catch (SQLException ex) {
                    ex.printStackTrace();
                }
            }
        }
    }
}

在此处,通过stmt.executeQuery(sql)方法执行查询SQL语句,并将查询结果存储在ResultSet对象rs中。使用rs.next()方法遍历查询结果。在查询完毕后,需要关闭Statement对象和ResultSet对象,释放资源。

五、数据表处理

在MySQL数据库中,可以通过Java程序创建数据表,也可以对数据表进行增、删、改、查等操作。以下是一个简单的数据表处理程序:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

public class MySQLTableExample {

    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;
        
        try {
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/testdb", "username", "password");
            if(conn != null) {
                System.out.println("Connected to the database");
            }
            
            stmt = conn.createStatement();
            String sql = "CREATE TABLE employees " +
                        "(id INTEGER not NULL, " +
                        " first_name VARCHAR(255), " +
                        " last_name VARCHAR(255), " +
                        " age INTEGER, " +
                        " PRIMARY KEY ( id ))";
            stmt.executeUpdate(sql);
            System.out.println("Table created successfully...");
        } catch (SQLException ex) {
            System.out.println("An error occurred while connecting MySQL database");
            ex.printStackTrace();
        } catch (ClassNotFoundException ex) {
            System.out.println("MySQL Driver not found");
            ex.printStackTrace();
        } finally {
            if(stmt != null) {
                try {
                    stmt.close();
                } catch (SQLException ex) {
                    ex.printStackTrace();
                }
            }
            if(conn != null) {
                try {
                    conn.close();
                } catch (SQLException ex) {
                    ex.printStackTrace();
                }
            }
        }
    }
}

在此处,通过stmt.executeUpdate(sql)方法创建数据表,并在数据表中定义了ID、Name、Age三个字段。执行完毕后,关闭Statement对象和Connection对象,释放资源。

六、小结

Java连接MySQL数据库需要先下载MySQL驱动包,安装MySQL服务器,并创建数据库。然后,通过Java程序实现连接MySQL数据库、执行SQL语句和数据表处理等操作。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/310020.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2025-01-04 19:32
下一篇 2025-01-04 19:32

相关推荐

  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • 如何修改mysql的端口号

    本文将介绍如何修改mysql的端口号,方便开发者根据实际需求配置对应端口号。 一、为什么需要修改mysql端口号 默认情况下,mysql使用的端口号是3306。在某些情况下,我们需…

    编程 2025-04-29
  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Python 常用数据库有哪些?

    在Python编程中,数据库是不可或缺的一部分。随着互联网应用的不断扩大,处理海量数据已成为一种趋势。Python有许多成熟的数据库管理系统,接下来我们将从多个方面介绍Python…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • openeuler安装数据库方案

    本文将介绍在openeuler操作系统中安装数据库的方案,并提供代码示例。 一、安装MariaDB 下面介绍如何在openeuler中安装MariaDB。 1、更新软件源 sudo…

    编程 2025-04-29

发表回复

登录后才能评论