Java语言实现对MySql数据库中数据的增删改查操作的代码

下面是Java语言实现对MySql数据库中数据的增删改查操作的完整攻略。这里使用JDBC API来操作数据库。

步骤

步骤一:导入JDBC API和JDBC驱动包

在项目中引入JDBC API 和 MySQL Connector/J驱动包,这里以Maven为例,在pom.xml中添加如下依赖:

<!-- JDBC API -->
<dependency>
    <groupId>javax.sql</groupId>
    <artifactId>javax.sql-api</artifactId>
    <version>2.0.0</version>
</dependency>

<!-- MySQL Connector/J -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.27</version>
</dependency>

步骤二:创建数据库连接

使用JDBC连接MySQL先建立数据库连接,需要提供数据库的JDBC URL、数据库用户名和密码。示例代码如下:

String jdbcUrl = "jdbc:mysql://localhost:3306/db_name";
String username = "root";
String password = "password";
Connection connection = DriverManager.getConnection(jdbcUrl, username, password);

步骤三:执行SQL语句

使用Statement对象执行INSERT语句,示例代码如下:

Statement statement = connection.createStatement();
String sql = "INSERT INTO users (name, age) VALUES ('Tom', 20)";
int rows = statement.executeUpdate(sql);
System.out.println("插入成功,影响行数:" + rows);

使用PreparedStatement对象执行DELETE语句,示例代码如下:

String sql = "DELETE FROM users WHERE id = ?";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
preparedStatement.setInt(1, 1);
int rows = preparedStatement.executeUpdate();
System.out.println("删除成功,影响行数:" + rows);

使用PreparedStatement对象执行UPDATE语句,示例代码如下:

String sql = "UPDATE users SET age = ? WHERE name = ?";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
preparedStatement.setInt(1, 30);
preparedStatement.setString(2, "Tom");
int rows = preparedStatement.executeUpdate();
System.out.println("更新成功,影响行数:" + rows);

使用Statement对象执行SELECT语句,示例代码如下:

Statement statement = connection.createStatement();
String sql = "SELECT * FROM users";
ResultSet resultSet = statement.executeQuery(sql);
while (resultSet.next()) {
    System.out.println(
            resultSet.getInt("id")
            + " " + resultSet.getString("name")
            + " " + resultSet.getInt("age"));
}

步骤四:关闭连接

我们需要在使用完数据库后关闭连接。

if (resultSet != null) {
    resultSet.close();
}
if (statement != null) {
    statement.close();
}
if (connection != null) {
    connection.close();
}

示例

下面是一个完整的示例代码,实现了用户信息的增删改查操作。

import java.sql.*;

public class DatabaseDemo {

    public static void main(String[] args) throws SQLException {
        String jdbcUrl = "jdbc:mysql://localhost:3306/testdb";
        String username = "root";
        String password = "123456";
        Connection connection = null;
        Statement statement = null;
        PreparedStatement preparedStatement = null;
        ResultSet resultSet = null;

        try {
            // 创建数据库连接
            connection = DriverManager.getConnection(jdbcUrl, username, password);

            // 插入数据
            statement = connection.createStatement();
            String sql = "INSERT INTO users (name, age) VALUES ('Tom', 20)";
            int rows = statement.executeUpdate(sql);
            System.out.println("插入成功,影响行数:" + rows);

            // 删除数据
            sql = "DELETE FROM users WHERE id = ?";
            preparedStatement = connection.prepareStatement(sql);
            preparedStatement.setInt(1, 1);
            rows = preparedStatement.executeUpdate();
            System.out.println("删除成功,影响行数:" + rows);

            // 更新数据
            sql = "UPDATE users SET age = ? WHERE name = ?";
            preparedStatement = connection.prepareStatement(sql);
            preparedStatement.setInt(1, 30);
            preparedStatement.setString(2, "Tom");
            rows = preparedStatement.executeUpdate();
            System.out.println("更新成功,影响行数:" + rows);

            // 查询数据
            statement = connection.createStatement();
            sql = "SELECT * FROM users";
            resultSet = statement.executeQuery(sql);
            while (resultSet.next()) {
                System.out.println(
                        resultSet.getInt("id")
                        + " " + resultSet.getString("name")
                        + " " + resultSet.getInt("age"));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            // 关闭连接
            if (resultSet != null) {
                resultSet.close();
            }
            if (preparedStatement != null) {
                preparedStatement.close();
            }
            if (statement != null) {
                statement.close();
            }
            if (connection != null) {
                connection.close();
            }
        }
    }
}

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java语言实现对MySql数据库中数据的增删改查操作的代码 - Python技术站

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

相关文章

  • Java简单实现SpringMVC+MyBatis分页插件

    Java简单实现SpringMVC+MyBatis分页插件 环境准备 在开始之前,需要确保以下环境已经准备好: JDK 1.8或以上版本 Maven 3.0或以上版本 Tomcat 8.0或以上版本 IntelliJ IDEA 2018或以上版本 创建Maven项目 打开IntelliJ IDEA,选择“Create New Project”。 在弹出的窗口…

    Java 2023年5月18日
    00
  • environments was not found on the java.library.path 问题的解决方法

    问题背景: 当在Java程序中调用JNI(Java Native Interface)代码或使用一些依赖本地库的第三方库时,可能会出现“environments was not found on the java.library.path”错误。这是因为JVM无法找到必要的库或库文件路径,导致没有正确初始化本地环境。 解决方法: 一般情况下,要解决这个问题,…

    Java 2023年5月19日
    00
  • Java 中解决Unsupported major.minor version 51.0的问题

    当我们编写一个Java程序时,可能会遇到“Unsupported major.minor version 51.0”的错误。这是因为Java程序的class文件有不同的版本,如果运行该程序的Java虚拟机版本比程序编译的版本低,则会出现该错误。以下是解决该问题的完整攻略: 问题分析 我们先来了解一下错误信息的含义。在错误信息中,“major.minor ve…

    Java 2023年5月20日
    00
  • Servlet+JavaBean+JSP打造Java Web注册与登录功能

    请稍等,我将为您详细讲解“Servlet+JavaBean+JSP打造Java Web注册与登录功能”的完整攻略。 1. 实现功能介绍 本次Java Web注册与登录功能实现,主要涉及三个模块:Servlet、JavaBean和JSP。其中Servlet实现用户请求的处理和响应,JavaBean实现数据的封装和处理,而JSP则是负责页面的显示。 具体实现的功…

    Java 2023年5月20日
    00
  • JavaSpringBoot报错“BeanCreationException”的原因和处理方法

    原因 “BeanCreationException” 错误通常是以下原因引起的: 依赖项问题:如果您的代码中存在依赖项问题,则可能会出现此错误。在这种情况下,您需要检查您的依赖项并确保它们正确。 配置问题:如果您的配置不正确,则可能会出现此错误。在这种情况下,您需要检查您的配置并确保它们正确。 解决办法 以下是解决 “BeanCreationExceptio…

    Java 2023年5月4日
    00
  • Java的Struts框架报错“NullModuleException”的原因与解决办法

    当使用Java的Struts框架时,可能会遇到“NullModuleException”错误。这个错误通常由以下原因之一起: 配置错误:如果配置文件中没有正确配置,则可能会出现此错误。在这种情况下,需要检查文件以解决此问题。 模块名称:如果模块名称不正确,则可能出现此错误。在这种情况下,需要检查模块名称以解决此问题。 以下是两个实例: 例 1 如果配置文件中…

    Java 2023年5月5日
    00
  • SpringBoot深入刨析数据层技术

    SpringBoot深入刨析数据层技术 简介 SpringBoot是一个非常流行的Java应用开发框架,它可以有效地提高开发效率和代码质量。在SpringBoot中,数据层是非常重要的一部分,它涉及到对数据库的操作和数据的管理。本文将深入探讨SpringBoot的数据层技术,并提供两个示例供读者参考。 数据库配置 在SpringBoot中配置数据库非常简单,…

    Java 2023年5月15日
    00
  • 通过agent判断浏览器版本救命分享

    针对“通过agent判断浏览器版本救命分享”这个话题,我们可以编写一篇完整攻略。攻略如下: 通过agent判断浏览器版本救命分享 什么是agent 在HTTP请求头中,有一个User-Agent字段,可以用来识别发起HTTP请求的客户端软件信息,这个字段就被称作“agent”或者“User-Agent”。 浏览器也会通过该字段告诉服务器它的信息,如浏览器名称…

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