java中JDBC增删改查操作详解

Java中JDBC增删改查操作详解

JDBC(Java Database Connectivity)是Java程序访问数据库的标准API。学习JDBC可以帮助我们了解如何在Java程序中对数据库进行增删改查等操作。

本教程将详细讲解Java中JDBC的增删改查操作,包括以下部分:

  • JDBC环境搭建
  • 数据库的增删改查操作
  • 示例

JDBC环境搭建

在使用JDBC之前,我们需要先配置JDBC环境。

  1. 下载并安装JDBC驱动

JDBC驱动程序是连接Java程序和数据库的桥梁,不同的数据库需要不同的驱动。以MySQL为例,在官网下载MySQL的JDBC驱动:https://dev.mysql.com/downloads/connector/j/

下载完后,将jar包添加到Java项目的classpath中。

  1. 加载JDBC驱动

在使用JDBC之前,需要先加载JDBC驱动程序。可以使用 Class.forName()方法来加载驱动。

// 加载MySQL驱动
Class.forName("com.mysql.jdbc.Driver");
  1. 建立数据库连接

使用JDBC访问数据库需要先建立数据库连接,可以通过 DriverManager.getConnection()方法来建立连接,并传入数据库的URL、用户名和密码。

// 建立MySQL数据库连接
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "123456");

数据库的增删改查操作

增加数据

通过JDBC可以使用SQL语句向数据库中插入新记录。可以使用 PreparedStatementStatement对象来执行SQL语句。

String sql = "INSERT INTO student(name, age) VALUES(?,?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "Tom");
pstmt.setInt(2, 25);
pstmt.executeUpdate();

这里使用 PreparedStatement对象来执行SQL语句,使用 setXXX()方法来设置占位符的值,再调用 executeUpdate()方法执行SQL语句。

删除数据

使用JDBC可以使用SQL语句从数据库中删除记录。

String sql = "DELETE FROM student WHERE id=?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, 1);
pstmt.executeUpdate();

这里使用 PreparedStatement对象来执行SQL语句,使用 setXXX()方法来设置占位符的值,再调用 executeUpdate()方法执行SQL语句。

修改数据

使用JDBC可以使用SQL语句更新数据库中的记录。

String sql = "UPDATE student SET name=?, age=? WHERE id=?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "Tom");
pstmt.setInt(2, 30);
pstmt.setInt(3, 1);
pstmt.executeUpdate();

这里使用PreparedStatement对象来执行SQL语句,使用setXXX()方法来设置占位符的值,再调用executeUpdate()方法执行SQL语句。

查询数据

使用JDBC可以使用SQL语句查询数据库中的记录。

String sql = "SELECT * FROM student WHERE age=?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, 25);
ResultSet rs = pstmt.executeQuery();

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

这里使用PreparedStatement对象来执行查询SQL语句,使用setXXX()方法设置占位符的值,并调用executeQuery()方法返回结果集,遍历结果集并输出每一条记录的信息。

示例

下面是一个完整的例子,演示了如何使用JDBC进行增删改查操作。

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

public class JDBCTest {
    static {
        try {
            // 加载MySQL驱动
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        Connection conn = null;
        try {
            // 建立MySQL数据库连接
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "123456");

            // 增加数据
            String sql = "INSERT INTO student(name, age) VALUES(?,?)";
            PreparedStatement pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, "Tom");
            pstmt.setInt(2, 25);
            pstmt.executeUpdate();

            // 删除数据
            sql = "DELETE FROM student WHERE id=?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setInt(1, 1);
            pstmt.executeUpdate();

            // 修改数据
            sql = "UPDATE student SET name=?, age=? WHERE id=?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, "Tom");
            pstmt.setInt(2, 30);
            pstmt.setInt(3, 2);
            pstmt.executeUpdate();

            // 查询数据
            sql = "SELECT * FROM student WHERE age=?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setInt(1, 25);
            ResultSet rs = pstmt.executeQuery();

            while (rs.next()) {
                System.out.println("id=" + rs.getInt("id") + ", name=" + rs.getString("name") + ", age=" + rs.getInt("age"));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            // 关闭数据库连接
            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

该例子使用了MySQL驱动,在建立MySQL连接之后,执行了增加数据、删除数据、修改数据、查询数据等操作。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java中JDBC增删改查操作详解 - Python技术站

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

相关文章

  • JavaWeb实现简单的自动登录功能

    JavaWeb 实现自动登录的功能,通常需要将用户登录时输入的用户名和密码保存到浏览器的 Cookie 中,下次用户再次访问网站时,如果本地浏览器保存有对应的 Cookie,则无需再次登录,直接获取用户的登录信息即可。 实现自动登录的具体步骤如下: 在登录时,将用户输入的用户名和密码进行验证,如果验证通过则生成一个唯一的令牌 token,并将该令牌和用户名保…

    Java 2023年6月15日
    00
  • 一文带你了解如何正确使用Java中的字符串常量池

    一文带你了解如何正确使用Java中的字符串常量池 什么是字符串常量池 在Java中,字符串常量池是JVM运行时数据区域的一部分,用来存放一些字符串常量,以便进行重用。 怎么使用字符串常量池 使用字符串常量创建字符串对象 Java中的字符串有两种创建方法:使用字符串常量和使用new操作符创建字符串对象。其中,使用字符串常量创建的字符串会首先尝试从字符串常量池中…

    Java 2023年5月26日
    00
  • Nginx自定义访问日志的配置方式

    下面详细讲解一下“Nginx自定义访问日志的配置方式”的完整攻略,具体步骤如下: 1. 确认Nginx的日志模块是否已经安装 在开始配置之前,我们需要确保本机上已经安装了Nginx的日志模块,可以通过以下命令进行确认: nginx -V 2>&1 | grep -o with-http_log_module 如果终端上显示了“with-http…

    Java 2023年6月15日
    00
  • 详解java生成json字符串的方法

    详解Java生成JSON字符串的方法 什么是JSON格式 在介绍Java生成JSON字符串的方法之前,我们先来了解一下什么是JSON格式。JSON,全称JavaScript Object Notation,是一种轻量级数据交换格式,与XML类似,但更加简洁。它使用键值对的形式来表示数据,通常有以下特点: 易于阅读、编写、理解 易于解析和生成 支持多种编程语言…

    Java 2023年5月26日
    00
  • springboot返回前端中文乱码的解决

    下面是详细的“springboot返回前端中文乱码的解决”的攻略: 问题产生的原因 在SpringBoot中,我们通常使用@RestController注解来声明一个RESTful风格的控制器,同时还使用了@RequestParam来获取前端传入的中文参数。然而,当我们返回中文字符串给前端时,很容易遇到返回结果乱码的问题。这是因为SpringBoot默认使用…

    Java 2023年5月27日
    00
  • springboot整合mybatisplus的方法详解

    下面我将介绍Spring Boot整合Mybatis-Plus的详细方法,包括项目环境搭建、依赖引入、配置文件设置、代码实现等内容。 环境搭建 在进行整合前首先需要搭建好Spring Boot项目的开发环境,可以使用IDE工具,如IntelliJ IDEA、Eclipse等,也可以通过Spring Initializr快速生成一个Spring Boot项目的…

    Java 2023年5月20日
    00
  • java读取excel表格的方法

    下面就为您详细讲解Java读取Excel表格的方法的完整攻略。 准备工作 在开始从Excel表格中读取数据之前,需要准备好以下两个工具: Apache POI:一个用于操作Microsoft文档格式文件的Java API。具体来讲,就是用于在Java程序中读取、写入和操作各种Microsoft文件,如Excel文件、Word文档、PowerPoint演示文稿…

    Java 2023年5月19日
    00
  • SpringBoot过滤器如何获取POST请求的JSON参数

    Spring Boot 过滤器拦截 HTTP 请求,并可以自定义操作修改请求和响应,很多情况下我们需要获取 POST 请求传递的 JSON 参数,下面我们就来介绍一下如何获取 POST 请求的 JSON 参数。 1.获取 POST 请求的 JSON 参数 我们可以通过 request.getInputStream() 获取 POST 请求的 inputstr…

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