JDBC如何获取数据库连接

yizhihongxing

JDBC是Java的一种用于操作关系型数据库(如MySQL、Oracle、SQL Server等)的API,其中与获取数据库连接相关的类和接口都可以在java.sqljavax.sql包中找到。

下面是使用JDBC获取数据库连接的完整攻略:

1. 导入JDBC驱动程序

使用JDBC访问数据库时,需要下载并导入相应的数据库驱动程序。此处以MySQL为例说明,下载并导入MySQL的JDBC驱动程序的方法如下:

直接下载JDBC驱动包,然后将其复制到项目中:

$ wget https://dev.mysql.com/downloads/connector/j/8.0/mysql-connector-java-8.0.23.tar.gz
$ tar -zxvf mysql-connector-java-8.0.23.tar.gz
$ cp mysql-connector-java-8.0.23/mysql-connector-java-8.0.23.jar <项目路径>

或使用Maven依赖:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.23</version>
</dependency>

2. 注册JDBC驱动程序

使用JDBC访问数据库时,需要先注册JDBC驱动程序。如果使用的是MySQL,注册代码如下:

try {
    Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
    e.printStackTrace();
}

相当于在类路径中查找并加载MySQL驱动程序。如果注册成功,则会将该驱动程序中的Driver类注册到java.sql.DriverManager中。

3. 获取数据库连接

JDBC通过DriverManager类来管理数据库驱动程序和数据库连接。获取数据库连接的代码如下:

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

public class DBUtils {
    private static final String URL = "jdbc:mysql://localhost:3306/test";
    private static final String USERNAME = "root";
    private static final String PASSWORD = "root";

    /**
     * 获取数据库连接
     * @return 数据库连接
     */
    public static Connection getConnection() {
        Connection conn = null;
        try {
            conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return conn;
    }
}

以上代码封装了获取数据库连接的方法,URL、USERNAME和PASSWORD为连接MySQL数据库的必要参数。如果需要连接其他数据库,URL中的协议、主机名、端口号、数据库名等参数需要相应改变。

4. 示例说明

以下为两条示例说明:

示例1

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

public class Demo {
    public static void main(String[] args) {
        Connection conn = DBUtils.getConnection();
        try {
            PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM user WHERE name = ?");
            pstmt.setString(1, "Tom");
            ResultSet rs = pstmt.executeQuery();
            while (rs.next()) {
                System.out.println(rs.getInt("id") + ", " + rs.getString("name") + ", " + rs.getString("password"));
            }
            rs.close();
            pstmt.close();
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

以上代码使用DBUtils类中的方法获取数据库连接,然后通过PreparedStatement对象实现对数据库的查询操作。

示例2

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Demo {
    public static void main(String[] args) {
        Connection conn = DBUtils.getConnection();
        try {
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT * FROM user");
            while (rs.next()) {
                System.out.println(rs.getInt("id") + ", " + rs.getString("name") + ", " + rs.getString("password"));
            }
            rs.close();
            stmt.close();
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

以上代码使用DBUtils类中的方法获取数据库连接,然后通过Statement对象实现对数据库的查询操作。

综上所述,使用JDBC获取数据库连接的攻略经过了以下步骤:导入JDBC驱动程序、注册JDBC驱动程序、获取数据库连接。并给出了以上步骤的具体示例说明。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JDBC如何获取数据库连接 - Python技术站

(0)
上一篇 2023年6月16日
下一篇 2023年6月16日

相关文章

  • Log4j日志分类和过滤敏感字段的实例

    Log4j是一个常用的Java日志框架,可以帮助我们定位程序运行时的错误以及提高代码的可读性。其中,日志分类和过滤敏感字段是常见的Log4j使用技巧。下面为大家详细讲解这两个方面的实例攻略。 1. 日志分类 在实际项目中,我们往往需要将不同类型的日志记录到不同的文件中,便于快速定位问题。下面是一个日志分类的示例: 首先,我们需要定义不同类别日志的Logger…

    Java 2023年5月20日
    00
  • Java实时监控日志文件并输出的方法详解

    Java实时监控日志文件并输出的方法,可以使用Java IO和多线程的知识来完成。主要流程可以分为以下几步: 创建一个文件读取器,用于读取日志文件的内容。 定义一个线程类,用于不断读取文件内容,并输出到控制台或其他存储介质中。 开启线程,开始实时监控日志文件。 具体实现步骤如下: 1、创建一个文件读取器 使用Java IO中的FileReader和Buffe…

    Java 2023年5月26日
    00
  • Spring Boot外部化配置实战解析

    SpringBoot外部化配置实战解析 SpringBoot是一个非常流行的Java Web框架,它可以帮助我们快速构建Web应用程序。在实际开发中,我们通常需要将一些配置信息从代码中分离出来,以便于在不同的环境中进行配置。本文将详细讲解SpringBoot外部化配置实战解析的完整攻略,并提供两个示例。 1. 配置文件 在SpringBoot中,我们可以使用…

    Java 2023年5月15日
    00
  • Java web项目启动Tomcat报错解决方案

    下面我将为您详细讲解“Java web项目启动Tomcat报错解决方案”的完整攻略。 问题描述 当我们使用IDE(例如Eclipse、IntelliJ IDEA)部署Java web项目到Tomcat中启动时,可能会遇到各种报错,例如以下报错信息: SEVERE: Error listenerStart java.lang.ClassNotFoundExce…

    Java 2023年5月19日
    00
  • Spring Security如何实现升级密码加密方式详解

    Spring Security是一个基于Spring框架的安全性框架,可以为Web应用程序提供身份验证、授权、防止CSRF攻击等功能。密码加密方式是Spring Security保护用户密码的一种方式,可以有效防止外部攻击者获取用户密码信息。在安全性方面,密码加密方式的保护能力越强,用户密码的安全性也就越高。下面,就让我们来详细讲解Spring Securi…

    Java 2023年5月20日
    00
  • spring AOP的After增强实现方法实例分析

    Spring AOP的After增强实现方法实例分析 在Spring框架中,After增强是在被代理方法执行后执行的增强。在该增强中,我们可以对被代理方法的返回结果进行处理,或者进行资源清理等操作。本文将讲解Spring AOP的After增强实现方法,并提供两个实例来说明。 After增强定义 After增强是在被代理方法执行后执行的增强,它可以处理被代理…

    Java 2023年5月31日
    00
  • Java Structs框架原理案例详解

    Java Structs框架原理案例详解 什么是Struts框架 Struts框架是一种流行的Java Web应用程序框架,Struts采用MVC(Model-View-Controller)架构模式,将应用程序的数据(Model),用户界面(View)和控制逻辑(Controller)清晰地分离开,以便维护和扩展应用程序。 Struts框架包含许多重要的组…

    Java 2023年5月20日
    00
  • SpringMvc请求处理参数 和 响应数据处理的示例详解

    Spring MVC是一种基于Java的Web框架,它提供了一种灵活的方式来处理Web请求和响应。在Spring MVC中,我们可以使用多种方式来处理请求参数和响应数据。本文将详细介绍Spring MVC请求处理参数和响应数据处理的方法,并提供两个示例来说明这些方法的使用。 Spring MVC请求处理参数 在Spring MVC中,我们可以使用多种方式来处…

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