Java连接 JDBC基础知识(操作数据库:增删改查)

Java连接 JDBC基础知识(操作数据库:增删改查)

前言

在现代的 Web 开发中,数据库是一个非常重要的组成部分。而 Java 作为一种高度优秀的编程语言,有着丰富的数据库连接库和框架。其中,JDBC 就是 Java 数据库连接的一种基础技术,而其实现也是非常简单的。本文将介绍 JDBC 基础知识及其在操作数据库时的使用攻略。

JDBC 连接数据库

首先,我们需要先创建一个数据库。在本文中,我们使用 MySQL 数据库作为例子。以下是 MySQL 创建数据库的 SQL 语句:

CREATE DATABASE db_test;

在创建好数据库后,我们需要在该数据库中创建一张表。以下是 MySQL 创建表的 SQL 语句:

CREATE TABLE tb_test(
    id INT(11) NOT NULL AUTO_INCREMENT,
    name VARCHAR(20) NOT NULL DEFAULT '',
    age TINYINT(4) NOT NULL DEFAULT '0',
    PRIMARY KEY (`id`)
);

在创建好数据库和表之后,我们需要配置 JDBC 数据库连接驱动。在 MySQL 中,我们可以使用官方的 JDBC 驱动,其名称为 com.mysql.cj.jdbc.Driver。以下是 JDBC 数据库连接的示例代码:

import java.sql.*;

public class JdbcTest {

    public static void main(String[] args) {

        String url = "jdbc:mysql://localhost:3306/db_test?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai";
        String username = "root";
        String password = "";

        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            Connection connection = DriverManager.getConnection(url, username, password);
            System.out.println("数据库连接成功!");
            connection.close();
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        }
    }
}

在上述代码中,url 的值为连接数据库的 URL 地址,其中 db_test 是我们创建的数据库名称,root 是 MySQL 数据库的默认用户名,密码为空。在建立数据库连接后,我们可以打印出提示信息,以确认连接是否有效。同时,在程序结束后,我们也需要关闭数据库连接。

JDBC 插入数据

接下来,我们将使用 JDBC 建立与 MySQL 数据库的连接,并插入数据到上述所创建的表中。首先,我们需要安装 MySQL 的 JDBC 驱动。在此,我们选择使用 Maven。

<!-- pom.xml -->
<dependencies>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.26</version>
    </dependency>
</dependencies>

在安装完成 MySQL 的 JDBC 驱动后,我们可以在代码中通过以下方式进行插入数据操作:

import java.sql.*;

public class JdbcTest {

    public static void main(String[] args) {

        String url = "jdbc:mysql://localhost:3306/db_test?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai";
        String username = "root";
        String password = "";

        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            Connection connection = DriverManager.getConnection(url, username, password);
            System.out.println("数据库连接成功!");

            Statement statement = connection.createStatement();
            String sql = "INSERT INTO tb_test (name, age) VALUES ('张三', 18)";
            statement.executeUpdate(sql);
            System.out.println("数据插入成功!");

            statement.close();
            connection.close();
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        }
    }
}

在上述代码中,我们首先创建了一个 Statement 对象,其可用于向数据库中发送 SQL 语句。接着,我们执行了一条 INSERT 语句,向表中插入了一条数据。在数据插入成功后,我们可以打印出提示信息,以供参考。

JDBC 查询数据

最后,我们需要使用 JDBC 查询数据,并输出表中的数据信息。以下是 JDBC 查询数据及输出的示例代码:

import java.sql.*;

public class JdbcTest {

    public static void main(String[] args) {

        String url = "jdbc:mysql://localhost:3306/db_test?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai";
        String username = "root";
        String password = "";

        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            Connection connection = DriverManager.getConnection(url, username, password);
            System.out.println("数据库连接成功!");

            Statement statement = connection.createStatement();
            String sql = "SELECT * FROM tb_test";
            ResultSet resultSet = statement.executeQuery(sql);

            while (resultSet.next()) {
                int id = resultSet.getInt("id");
                String name = resultSet.getString("name");
                int age = resultSet.getInt("age");
                System.out.printf("id=%d, name=%s, age=%d\n", id, name, age);
            }

            resultSet.close();
            statement.close();
            connection.close();
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        }
    }
}

在上述代码中,我们首先使用了 executeQuery() 方法执行了一条 SELECT 语句,并获得了 ResultSet 对象。随后,我们可以通过 ResultSet 对象中的 next() 方法循环获取查询结果,并输出数据信息。

总结

本文介绍了 JDBC 连接数据库并操作数据的基础知识,并提供了相关示例代码。在开发过程中,我们需要注意以下几点:

  • 建立数据库连接时,我们需要指定数据库的 URL 地址。
  • 数据库操作时,我们需要先创建 Statement 对象,然后调用其中的方法。
  • 数据库查询时,查询结果需要通过 ResultSet 对象进行获取。

总的来说,JDBC 是 Java 连接数据库的一种基础技术,以上提供的内容如仅供参考,更多详细信息请自行查阅相关资料。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java连接 JDBC基础知识(操作数据库:增删改查) - Python技术站

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

相关文章

  • Spring MVC整合Shiro权限控制的方法

    下面是“Spring MVC整合Shiro权限控制的方法”的完整攻略。 一、简介 Shiro是一个开源的安全框架,可以提供认证、授权、加密和会话管理等安全相关功能。Spring MVC是一个流行的Web框架,提供了建立Web应用程序的开发模型和程序依赖管理。本文将介绍如何在Spring MVC中整合Shiro权限控制。 二、整合步骤 1. 引入依赖 首先,在…

    Java 2023年5月20日
    00
  • SpringBoot中通过实现WebMvcConfigurer参数校验的方法示例

    下面是关于“SpringBoot中通过实现WebMvcConfigurer参数校验的方法示例”的完整攻略,包含两个示例说明。 SpringBoot中通过实现WebMvcConfigurer参数校验的方法示例 在SpringBoot中,我们可以通过实现WebMvcConfigurer接口来实现参数校验的功能。WebMvcConfigurer是SpringMVC…

    Java 2023年5月17日
    00
  • 不让tomcat显示目录文件列表的配置方法

    下面是详细的攻略: 什么是目录文件列表 在访问一个网页时,如果该网页所在的目录中含有多个文件,那么当我们没有明确指定要访问的文件时(比如访问一个目录时),服务器会默认返回一个该目录下所有文件的列表。这个列表就被称为目录文件列表,它通常会列出每个文件的名称、文件尺寸、修改时间等信息。 在一些情况下,我们可能希望禁止服务器显示目录文件列表,因为它有可能会暴露我们…

    Java 2023年6月15日
    00
  • Sping Security前后端分离两种实战方案

    下面我将详细讲解“Sping Security前后端分离两种实战方案”的完整攻略。 方案概述 Spring Security作为一个强大的安全框架,在项目中得到了广泛的应用,但是其安全配置可能会随着项目的复杂度而变得非常繁琐。而前后端分离的架构模式也越来越多地被应用在实际项目中,那么如何在Spring Security中实现前后端分离呢?本文将介绍两种前后端…

    Java 2023年5月20日
    00
  • Java实现JDBC批量插入原理详解

    Java实现JDBC批量插入原理详解 为什么使用JDBC批量插入? 当需要将大量数据存入数据库时,常规的操作是采用循环逐条插入的方式,此种方式会严重影响效率且容易出现内存溢出等问题。而使用JDBC批量插入,可以有效提高插入效率,减少内存消耗,缩短程序执行时间。 JDBC批量插入是怎么工作的? JDBC批量插入是通过使用PreparedStatement的ad…

    Java 2023年5月20日
    00
  • Sprint Boot @Configuration使用方法详解

    @Configuration是Spring Boot中的一个注解,它用于标记一个类为配置类。配置类是一种特殊的类,它用于定义应用程序的配置信息,例如数据源、缓存、消息队列等。在Spring Boot中,我们可以使用@Configuration注解来定义配置类,并使用其他注解来定义配置信息。 @Configuration的作用 @Configuration注解…

    Java 2023年5月5日
    00
  • Java详细介绍单例模式的应用

    下面我将为你详细介绍“Java详细介绍单例模式的应用”,这里是完整攻略: 什么是单例模式 单例模式是一种常见的设计模式之一。在该模式中,一个类只能有一个实例,并提供一个全局访问点。 单例模式的应用场景 开发人员经常使用单例模式来控制系统中某些类的唯一性,例如: 数据库连接池 系统配置信息对象 日志记录器对象 单例模式的实现方式 实现单例有两种方式:懒汉式和饿…

    Java 2023年5月26日
    00
  • 详解Spring Kafka中关于Kafka的配置参数

    下面我来详细讲解一下关于“详解Spring Kafka中关于Kafka的配置参数”的完整攻略。 1. Kafka中常用的配置参数 在使用Kafka时,可以通过配置不同的参数来更加灵活地自定义Kafka的行为。下面是Kafka中一些常用的配置参数: bootstrap.servers:Kafka集群的连接地址列表,指定了Kafka Broker的主机名和端口号…

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