MySQL为例讲解JDBC数据库连接步骤

MySQL为例讲解JDBC数据库连接步骤

JDBC简介

JDBC(Java Database Connectivity)是一种Java语言中访问数据库的API(Application Programming Interface)。

JDBC可以让Java程序连接到各种关系型数据库,进行数据的读取、写入操作等。JDBC的设计目标是使Java程序员从不同的关系型数据库中访问和处理数据,以作为一个独立的数据管理层。

准备工作

在使用JDBC之前,需要先在项目中引入JDBC驱动包。以MySQL为例,可以从官网 https://dev.mysql.com/downloads/connector/j/下载对应的驱动包。

下载完成后,将驱动包添加到项目的classpath路径下。

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>${mysql.version}</version>
</dependency>

步骤

连接数据库的步骤可以分为以下几步:

  1. 加载数据库驱动
  2. 获取数据库连接
  3. 创建statement对象
  4. 执行SQL语句
  5. 处理查询结果
  6. 关闭各种连接

下面是一个简单的示例:

import java.sql.*;

public class JdbcDemo {
    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        try {
            // 加载数据库驱动
            Class.forName("com.mysql.cj.jdbc.Driver");
            // 获取数据库连接
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbname?", "root", "password");
            // 创建statement对象
            stmt = conn.createStatement();
            // 执行SQL语句
            rs = stmt.executeQuery("select * from student");
            // 处理查询结果
            while (rs.next()) {
                String name = rs.getString("name");
                String age = rs.getString("age");
                System.out.println("name: " + name + ", age: " + age);
            }
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        } finally {
            // 关闭各种连接
            try {
                if (rs != null) {
                    rs.close();
                }
                if (stmt != null) {
                    stmt.close();
                }
                if (conn != null) {
                    conn.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

示例2

下面是一个带参数查询的示例:

import java.sql.*;

public class JdbcDemo2 {
    public static void main(String[] args) {
        Connection conn = null;
        PreparedStatement stmt = null;
        ResultSet rs = null;
        try {
            // 加载数据库驱动
            Class.forName("com.mysql.cj.jdbc.Driver");
            // 获取数据库连接
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbname?", "root", "password");
            // 创建statement对象
            String sql = "select * from student where age > ?";
            stmt = conn.prepareStatement(sql);
            // 设置参数
            stmt.setString(1, "20");
            // 执行SQL语句
            rs = stmt.executeQuery();
            // 处理查询结果
            while (rs.next()) {
                String name = rs.getString("name");
                String age = rs.getString("age");
                System.out.println("name: " + name + ", age: " + age);
            }
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        } finally {
            // 关闭各种连接
            try {
                if (rs != null) {
                    rs.close();
                }
                if (stmt != null) {
                    stmt.close();
                }
                if (conn != null) {
                    conn.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

总结

JDBC可以帮助我们很方便地访问各种关系型数据库,但在使用中需要注意关闭各种连接,以避免资源占用过程中可能的问题。

阅读剩余 66%

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MySQL为例讲解JDBC数据库连接步骤 - Python技术站

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

相关文章

  • Java Spring框架的概述

    Java Spring框架是一个轻量级的应用程序框架,由许多模块组成,提供了针对企业级应用程序开发的全面支持。Spring框架采用了模块化的方法来设计,使得应用程序可以只包含其所需要的模块。此外,它还提供了面向切面编程的支持和对依赖注入的支持,这使得应用程序开发更加灵活和易于维护。 下面是几个Spring框架中最常用的模块: Core Container:包…

    Java 2023年5月19日
    00
  • volatile关键字的作用是什么?

    首先,volatile 是 C 和 C++ 中的一个关键字,用于告诉编译器该变量是可以被其他线程修改的,从而避免了编译器进行一些针对该变量的优化,确保了内存中的正确性。 使用 volatile 的作用是使变量的访问和修改都在主内存中进行,而不是在寄存器或缓存中进行,以实现不同线程之间的可见性和互通性。例如,在多线程程序中,如果一个线程修改了一个变量的值,而另…

    Java 2023年5月10日
    00
  • JavaScript对象与JSON格式的转换及JSON.stringify和JSON.parse的使用方法

    我来给你详细讲解“JavaScript对象与JSON格式的转换及JSON.stringify和JSON.parse的使用方法”的完整攻略。 什么是JSON格式? JSON全称JavaScript Object Notation,是一种轻量级数据交换格式。JSON格式的数据由键值对构成,其中双引号包裹的键名和键值之间用冒号分隔,多个键值对之间用逗号分隔,整个J…

    Java 2023年5月26日
    00
  • Spring框架中一个有用的小组件之Spring Retry组件详解

    Spring Retry组件详解 简介 Spring Retry是一个轻量级的框架,它能够帮助我们在失败时自动重试方法调用。 快速上手 在使用Spring Retry之前,需要进行如下配置: 添加依赖: <dependency> <groupId>org.springframework.retry</groupId> &l…

    Java 2023年5月19日
    00
  • java 多态实例代码

    我们来讲解一下“java 多态实例代码”的完整攻略。 什么是多态 多态是指同一种行为具有多个不同表现形式或形态的能力,即同一种行为基于不同的对象会产生不同的结果。在Java中,多态是指一个对象的实例在不同的情况下会表现出不同的行为。 多态的实现 在Java中,多态的实现主要有两种方式:继承和接口。通过继承实现多态,我们可以创建一个父类,然后在子类中重写其中一…

    Java 2023年5月30日
    00
  • JSP教程(三)–JSP中”预定义变量”的使用

    接下来我将为你讲解“JSP教程(三)–JSP中预定义变量”的使用的完整攻略。 什么是JSP中的预定义变量? 在JSP页面中,有一些变量不需要我们定义就可以直接使用,这些变量就被称作“预定义变量”,也叫“内置对象”。在JSP中,有9个预定义变量,分别是: request:HttpServletRequest类型,代表客户端发出的请求。 response:Ht…

    Java 2023年6月15日
    00
  • SpringBoot高级配置之临时属性、配置文件、日志、多环境配置详解

    Spring Boot高级配置之临时属性、配置文件、日志、多环境配置详解 在Spring Boot应用程序中,我们需要进行高级配置,以满足不同的需求。本文将详细讲解Spring Boot高级配置,包括临时属性、配置文件、日志、多环境配置等。 临时属性 Spring Boot允许我们在运行时设置临时属性,这些属性将覆盖应用程序中的默认属性。以下是一个示例: @…

    Java 2023年5月15日
    00
  • springboot+spring data jpa实现新增及批量新增方式

    关于“springboot+spring data jpa实现新增及批量新增方式”的完整攻略,具体步骤如下: 步骤一:添加依赖 在pom.xml文件中添加Spring Data JPA的依赖: <dependency> <groupId>org.springframework.data</groupId> <arti…

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