jdbc操作mysql数据库实例

一、前言

Java Database Connectivity(JDBC)是Java提供的一种操作各种关系型数据库的API。本攻略将介绍如何使用JDBC操作MySQL数据库,包括连接MySQL数据库、创建表、插入记录、查询记录、更新记录和删除记录等操作。

二、依赖和环境需求

在开始实践之前,我们需要准备以下依赖和环境:

  • MySQL数据库(可以是本地安装的,也可以是远程的);
  • JDK 8及以上版本;
  • JDBC驱动,可以从MySQL官方网站下载:https://dev.mysql.com/downloads/connector/j/

三、连接MySQL数据库

  1. 导入JDBC驱动

在Java程序中,我们需要先导入JDBC驱动,以使用数据库连接类库。可以使用Class.forName()方法来动态加载驱动程序。

try {
    // 加载MySQL JDBC驱动
    Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
    e.printStackTrace();
}
  1. 建立数据库连接
Connection conn = null;
String url = "jdbc:mysql://localhost:3306/test";
String username = "root";
String password = "root";
try {
    // 创建数据库连接
    conn = DriverManager.getConnection(url, username, password);
    if (conn != null) {
        System.out.println("连接成功。");
    }
} catch (SQLException e) {
    e.printStackTrace();
}
  1. 关闭数据库连接

操作完成后,需要关闭连接以释放资源。

try {
    if (conn != null) {
        conn.close();
        System.out.println("关闭连接。");
    }
} catch (SQLException e) {
    e.printStackTrace();
}

示例1:查询数据库信息

import java.sql.*;

public class Main {

    public static void main(String[] args) {

        Connection conn = null;
        String url = "jdbc:mysql://localhost:3306/test";
        String username = "root";
        String password = "root";

        try {
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection(url, username, password);

            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT * FROM users");
            while (rs.next()) {
                int id = rs.getInt("id");
                String name = rs.getString("name");
                String email = rs.getString("email");
                System.out.println("id: " + id + ", name: " + name + ", email: " + email);
            }
            rs.close();
            stmt.close();

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

    }
}

示例2:插入数据

import java.sql.*;

public class Main {

    public static void main(String[] args) {

        Connection conn = null;
        String url = "jdbc:mysql://localhost:3306/test";
        String username = "root";
        String password = "root";

        try {
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection(url, username, password);

            String sql = "INSERT INTO users (name, email) VALUES (?, ?)";
            PreparedStatement stmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
            stmt.setString(1, "Tom");
            stmt.setString(2, "tom@example.com");
            int rows = stmt.executeUpdate();
            System.out.println("插入成功。" + rows + "行受影响。");

            ResultSet generatedKeys = stmt.getGeneratedKeys();
            if (generatedKeys.next()) {
                int id = generatedKeys.getInt(1);
                System.out.println("新插入的记录ID为:" + id);
            }
            generatedKeys.close();
            stmt.close();

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

    }
}

四、总结

本文主要介绍了如何使用JDBC操作MySQL数据库,包括连接MySQL数据库、创建表、插入记录、查询记录、更新记录和删除记录等操作。以上示例代码可以供初学者参考,希望对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jdbc操作mysql数据库实例 - Python技术站

(0)
上一篇 2023年6月16日
下一篇 2023年6月16日

相关文章

  • 原因分析IDEA导入Spring-kafka项目Gradle编译失败

    下面是详细的攻略: 问题背景 在开发Spring-kafka项目时,使用IDEA作为开发工具进行import后,进行Gradle编译时会出现失败。导致编译失败的原因主要有以下几个方面: IDEA默认所使用的Gradle版本与项目Gradle版本不一致,导致编译报错 缺少项目依赖的jar包或者版本不匹配 项目配置文件配置有误 解决方案 方案一:更改Gradle…

    Java 2023年5月20日
    00
  • Java设计模式之装饰者模式详解和代码实例

    Java设计模式之装饰者模式详解和代码实例 什么是装饰者模式? 装饰者模式是一种结构型设计模式,以动态的方式将责任附加到对象上。装饰者提供了与继承相比更为灵活的替代方案,以扩展功能。 装饰者模式的组成 抽象构件(Component):定义装饰者和被装饰者的公共接口。 具体构件(ConcreteComponent):这是被装饰者,这是需要进行功能扩展的对象。 …

    Java 2023年5月23日
    00
  • 详解spring cloud如何使用spring-test进行单元测试

    当我们使用Spring Cloud来构建微服务应用程序的时候,我们需要对代码进行单元测试,以确保代码质量和应用的正确性。Spring提供了一个非常强大的测试框架:Spring Test,可以帮助我们实现Spring Cloud应用程序的单元测试。本文将详细介绍如何使用Spring Test进行单元测试。 什么是Spring Test 在我们开始介绍如何使用S…

    Java 2023年5月31日
    00
  • javaweb Servlet开发总结(二)

    下面是针对“javaweb Servlet开发总结(二)”的详细攻略: 1. Servlet生命周期 在Servlet的生命周期中,当第一个请求到来时,Servlet容器将构造一个Servlet实例,并调用init()方法对其进行初始化,接着调用service()方法对其进行服务处理。如果容器要求Servlet销毁,则调用destroy()方法,Servle…

    Java 2023年6月15日
    00
  • Java中调用Python的实现示例

    Java和Python是两种不同的编程语言,在Java项目中,如果需要使用Python的某些功能,可以通过调用Python脚本来实现。下面是Java中调用Python的实现攻略。 环境准备 使用Java调用Python,需要先安装以下软件: Java开发工具,如Eclipse、IntelliJ IDEA或NetBeans等。 Python解释器,建议使用Py…

    Java 2023年5月26日
    00
  • java实现的各种排序算法代码示例

    “Java实现的各种排序算法代码示例”这个话题,是介绍Java中常用的各种排序算法的实现方式。在这篇攻略中,将会依次介绍常用排序算法的实现思路,结合Java语言的特点,详细讲解每种算法的代码实现。 什么是排序算法 排序算法是计算机科学中的一种重要算法,它指的是将一组序列按照顺序重新排列的过程。对于程序员来说,熟练掌握各种排序算法,不仅可以提高代码的执行效率,…

    Java 2023年5月18日
    00
  • Servlet的5种方式实现表单提交(注册小功能),后台获取表单数据实例

    这里是Servlet实现表单提交的5种方式及获取表单数据的攻略: 一、POST提交表单 POST 是较为安全的一种方法,用于向 Web 页面发送大量数据。数据是作为 HTTP POST 请求的一部分来发送的。下面是示例代码。 // 在 doPost 方法中获取表单数据 protected void doPost(HttpServletRequest requ…

    Java 2023年5月20日
    00
  • Java日常练习题,每天进步一点点(32)

    首先我们需要了解这个题目的基本信息,可以看到这是“Java日常练习题,每天进步一点点”系列中的第32题,很有可能是一道适合初学者的小练习,能够帮助我们巩固一些Java基础知识和编程技巧。 在开始解答之前,我们需要明确这道题目的要求和背景信息。以下是题目的原始描述: 「题目描述」给你一个字符串 s 和一个非负整数 k,请你找出 s 中的最长子串,要求该子串中的…

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