java jdbc连接mysql数据库实现增删改查操作

yizhihongxing

Java JDBC连接MySQL数据库实现增删改查操作

简介

Java中的JDBC(Java Database Connectivity)是Java语言操作数据库的通用API,能够与各种关系型数据库进行交互。MySQL是一种流行的关系型数据库,在Java中使用JDBC连接MySQL数据库进行增删改查操作既方便又常用。

步骤

1. 准备工作

在使用JDBC连接MySQL之前,需要进行一些准备工作:

  • 安装MySQL数据库(略)
  • 下载MySQL JDBC驱动
  • 导入MySQL JDBC驱动到项目中

以下为Maven项目中导入MySQL JDBC驱动的方式,也可以将其手动导入到项目中:

<!-- MySQL JDBC驱动 -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.26</version>
</dependency>

2. 连接MySQL数据库

连接MySQL数据库可以使用java.sql.Connection接口,该接口包含以下方法:

public interface Connection extends Wrapper, AutoCloseable {
    // 标准SQL查询语句 
    public Statement createStatement() throws SQLException;
    // 标准SQL查询语句,即可滚动的结果集 
    public Statement createStatement(int resultSetType, int resultSetConcurrency) throws SQLException;
    // 将标准SQL查询语句编译为可重用的语句 
    public PreparedStatement prepareStatement(String sql) throws SQLException;
    // 将标准SQL查询语句编译为可重用的语句,即可滚动的结果集 
    public PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency) throws SQLException;
    // 开启事务 
    public void setAutoCommit(boolean autoCommit) throws SQLException;
    // 提交事务 
    public void commit() throws SQLException;
    // 回滚事务 
    public void rollback() throws SQLException;
    // 关闭连接 
    public void close() throws SQLException;
}

下面是连接MySQL数据库的示例:

public class JdbcDemo {

    public static void main(String[] args) throws ClassNotFoundException, SQLException {

        // 注册MySQL数据库的驱动
        Class.forName("com.mysql.cj.jdbc.Driver");

        // 获取到连接MySQL的驱动
        String url = "jdbc:mysql://localhost:3306/example?serverTimezone=UTC";
        String username = "root";
        String password = "root123456";
        Connection conn = DriverManager.getConnection(url, username, password);

        System.out.println("已连接MySQL数据库");

        // ...
    }

}

3. 实现增、删、改、查操作

连接成功后,就可以使用JDBC API对MySQL数据库进行增、删、改、查操作。以下是操作MySQL数据库的示例:

public class JdbcDemo {

    public static void main(String[] args) throws ClassNotFoundException, SQLException {

        // 注册MySQL数据库的驱动
        Class.forName("com.mysql.cj.jdbc.Driver");

        // 获取到连接MySQL的驱动
        String url = "jdbc:mysql://localhost:3306/example?serverTimezone=UTC";
        String username = "root";
        String password = "root123456";
        Connection conn = DriverManager.getConnection(url, username, password);

        System.out.println("已连接MySQL数据库");

        // 实现增加数据
        String insertSql = "INSERT INTO user(username, password) VALUES (?, ?)";
        PreparedStatement ps = conn.prepareStatement(insertSql);
        ps.setString(1, "John");
        ps.setString(2, "123456");
        ps.executeUpdate();
        System.out.println("增加数据操作成功");

        // 实现删除数据
        String deleteSql = "DELETE FROM user WHERE username = ?";
        PreparedStatement ps1 = conn.prepareStatement(deleteSql);
        ps1.setString(1, "John");
        ps1.executeUpdate();
        System.out.println("删除数据操作成功");

        // 实现更新数据
        String updateSql = "UPDATE user SET password = ? WHERE username = ?";
        PreparedStatement ps2 = conn.prepareStatement(updateSql);
        ps2.setString(1, "654321");
        ps2.setString(2, "Lucy");
        ps2.executeUpdate();
        System.out.println("更新数据操作成功");

        // 实现查询数据
        String querySql = "SELECT * FROM user";
        Statement statement = conn.createStatement();
        ResultSet resultSet = statement.executeQuery(querySql);
        while (resultSet.next()) {
            int id = resultSet.getInt("id");
            String username1 = resultSet.getString("username");
            String password1 = resultSet.getString("password");
            System.out.println("id=" + id + ", username=" + username1 + ", password=" + password1);
        }

        //关闭连接
        conn.close();
    }

}

结束语

Java JDBC连接MySQL数据库实现增删改查操作是在Java语言中访问MySQL数据库的基础标准库之一,它提供了面向关系型数据的API和底层实现,封装了大量的访问底层的细节和异常,使开发者能够更加专注于SQL语句本身的实现。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java jdbc连接mysql数据库实现增删改查操作 - Python技术站

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

相关文章

  • 基于struts2和hibernate实现登录和注册功能

    下面是关于“基于Struts2和Hibernate实现登录和注册功能”的完整攻略: 基本流程 搭建基本的开发环境。安装好开发工具、Tomcat服务器、数据库等必要的软件和环境。 根据项目需求,设计好数据库中用户表的结构,例如包含用户ID、用户名、密码、邮箱等字段。 利用Hibernate生成实体类和对应数据库表之间的映射关系。 编写相应的业务逻辑和DAO层的…

    Java 2023年5月19日
    00
  • Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法

    让我来详细讲解“Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法”的完整攻略。首先,我们需要明确的是,Java.lang.NullPointerException错误通常表示我们在使用一个空(Null)对象的时候,未能正确地进行判断,从而导致这个错误的出现。接下来,我将分享以下两条解决…

    Java 2023年5月27日
    00
  • MyBatis学习教程(八)-Mybatis3.x与Spring4.x整合图文详解

    “MyBatis学习教程(八)-Mybatis3.x与Spring4.x整合图文详解”是一篇介绍如何将Mybatis3.x和Spring4.x整合起来的教程。该教程主要分为以下几个部分: 1. 整合前准备 在整合Mybatis3.x和Spring4.x之前,我们需要先确保系统中已经安装好了Spring4.x和Mybatis3.x。如果还没有安装,可以参考官方…

    Java 2023年5月19日
    00
  • java实现CSV文件导入与导出功能

    接下来我将为您详细讲解如何使用Java实现CSV文件导入与导出功能,以下是完整攻略: 1. 了解CSV文件格式 CSV(Comma-Separated Values),即逗号分隔符文件,是一种常见的文件格式。每行数据以逗号或其他符号作为分隔符,可以存储多行数据。在CSV文件中,每行数据都代表一条记录,每行的各个字段代表了该记录的相关信息。 2. 导入CSV文…

    Java 2023年5月19日
    00
  • Spring Security源码解析之权限访问控制是如何做到的

    首先,Spring Security是一个基于Spring框架的安全框架,它提供了身份认证和授权等功能,帮助我们防止各种安全攻击,保障我们的应用程序安全。 Spring Security的权限访问控制是通过访问控制表达式来实现的,可以在配置文件中配置。访问控制表达式包含了许多参数和操作符,用于判断用户是否有权访问特定的资源。具体来说,Spring Secur…

    Java 2023年5月20日
    00
  • 全面解析java final关键字

    全面解析java final关键字 1. 什么是final关键字 final是Java语言中的一个关键字,它可以用来修饰变量、方法和类,表示该变量、方法或类只能被赋值一次或者在声明时被初始化一次,并不能再被修改或继承。final关键字有时被称为“不可变量”、“常量”、“最终变量”等。 2. final变量 final变量表示的是一旦被初始化,就不能再修改该变…

    Java 2023年5月26日
    00
  • SpringBoot快速整合Mybatis、MybatisPlus(代码生成器)实现数据库访问功能

    SpringBoot整合Mybatis 1.引入依赖 在pom.xml中引入以下依赖: <!– SpringBoot整合Mybatis依赖 –> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis…

    Java 2023年5月20日
    00
  • Java Mybatis框架Dao层的实现与映射文件以及核心配置文件详解分析

    Java Mybatis是一个优秀的持久层框架,它结合了Java和SQL,解决了面向对象编程中关系数据库的持久化问题。在Java Mybatis中,Dao层是一个非常重要的组成部分,它是应用程序和数据库之间的中间层,主要用于数据访问的封装和管理,而映射文件则用于将SQL语句与Dao层的方法进行映射,核心配置文件则用于对Java Mybatis框架进行配置和管…

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