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

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

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

相关文章

  • Spring Data JPA分页复合查询原理解析

    Spring Data JPA分页复合查询原理解析 在使用 Spring Data JPA 的过程中,分页和复合查询是经常用到的功能。本文将详细讲解 Spring Data JPA 分页和复合查询的原理,同时给出两个示例进行演示。 分页原理 Spring Data JPA 的分页功能基于 Spring Framework 的 PagingAndSorting…

    Java 2023年5月20日
    00
  • SpringBoot接口返回结果封装方法实例详解

    SpringBoot接口返回结果封装方法实例详解 在SpringBoot中,我们可以使用接口返回结果封装方法来统一处理接口返回结果。本文将详细讲解SpringBoot接口返回结果封装方法实例的完整攻略,并提供两个示例。 1. 接口返回结果封装方法 在SpringBoot中,我们可以使用接口返回结果封装方法来统一处理接口返回结果。以下是接口返回结果封装方法的基…

    Java 2023年5月15日
    00
  • 使用Maven Helper解决Maven插件冲突的方法

    使用Maven进行项目构建时,不可避免地会涉及到多个依赖库之间的版本冲突问题,特别是在使用多个Maven插件时更容易发生冲突。而Maven Helper是一款方便的插件,能够帮助我们解决这些冲突。下面是使用Maven Helper解决Maven插件冲突的方法: 1. 安装Maven Helper插件 首先需要在Maven项目中安装Maven Helper插件…

    Java 2023年5月20日
    00
  • jetty运行时无法保存文件的解决方法

    问题描述: 在使用Jetty web服务器时,有可能会出现无法保存文件的问题。这主要是由于jetty用户没有足够的权限保存文件。那么如何解决这个问题呢? 解决方法: 以下是“jetty运行时无法保存文件的解决方法”的完整攻略: 为Jetty用户授权。 通常情况下,Jetty运行时使用的是与服务器系统中的其他用户不同的用户账号,这个用户可能没有权限保存文件。因…

    Java 2023年6月16日
    00
  • Spring Security入门demo案例

    下面是Spring Security入门demo案例的完整攻略。 一、前置知识 在开始学习Spring Security入门demo案例之前,你需要具备以下一些基础知识: 基本的Java编程语言和Spring框架的了解; 熟悉Spring MVC框架的开发以及相关的Maven工程构建方式。 二、Spring Security简介 Spring Securit…

    Java 2023年5月20日
    00
  • Spring Security 过滤器注册脉络梳理

    下面是Spring Security 过滤器注册脉络梳理的完整攻略。 Spring Security 过滤器注册脉络梳理 在Spring Security中,过滤器的注册是非常重要的一项工作,它决定了Spring Security能否对请求进行拦截,并进行相应的安全控制。 过滤器链 Spring Security 采用了一条链式过滤器来完成安全控制,它是由一…

    Java 2023年5月20日
    00
  • Farpoint的简单用法简要概述

    Farpoint的简单用法简要概述 Farpoint是一款由美国开发商研发的企业级Excel组件,旨在增强Excel的导入导出、处理、编辑等功能,提高研发、业务等效率。Farpoint可以集成在.NET版本的Visual Studio中,使用也较为简单。本篇攻略将详细讲解Farpoint的简单用法,帮助开发者更好地使用该组件。 1. Farpoint的安装与…

    Java 2023年6月16日
    00
  • java中PreparedStatement和Statement详细讲解

    Java 中 PreparedStatement 和 Statement 详细讲解 在 Java 中执行 SQL 操作时,通常会使用 Statement 或 PreparedStatement 对象。PreparedStatement 对象是 Statement 的一种特殊形式,它允许我们预处理 SQL 语句,从而提高 SQL 查询的性能和安全性。在本文中,…

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