Java DriverManager.getConnection()获取数据库连接

Java中获取数据库连接最常用的方式就是使用DriverManager类提供的getConnection静态方法,getConnection需要传递3个参数,分别为url、username和password。

其中,url参数用于指定连接的数据库、连接字符串,比如 "jdbc:mysql://localhost:3306/test",表示连接本地3306端口下的test数据库;username和password则用于指定连接的数据库中的用户名和密码,它们可以是任意一个有访问权限的用户。

对于MySQL数据库而言,如果遇到乱码的情况,需要在getConnection方法中增加一句参数:useUnicode=true&characterEncoding=utf-8,以保证数据的正确显示与保存。

示例1:

import java.sql.*;

public class Test {
    public static void main(String[] args) {
        // 数据库连接地址
        String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8";
        // 数据库用户名
        String username = "root";
        // 数据库密码
        String password = "123456";
        try {
            // 1. 注册数据库的驱动程序
            Class.forName("com.mysql.cj.jdbc.Driver");
            // 2. 获取数据库连接
            Connection connection = DriverManager.getConnection(url, username, password);
            // 3. 使用连接进行数据库操作
            // TODO
            // 4. 关闭数据库连接
            connection.close();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

示例2:

import java.sql.*;

public class Test {
    public static void main(String[] args) {
        // 数据库连接地址
        String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8";
        // 数据库用户名
        String username = "root";
        // 数据库密码
        String password = "123456";
        try {
            // 可以省略步骤1,直接使用DriverManager进行连接
            // 2. 获取数据库连接
            Connection connection = DriverManager.getConnection(url, username, password);
            // 3. 使用连接进行数据库操作
            // TODO
            // 4. 关闭数据库连接
            connection.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

以上两个示例中,第一个示例包含了注册数据库驱动程序的步骤,这是通用的做法,可以适用于连接所有的数据库。第二个示例中省略了注册驱动程序的步骤,因为在使用DriverManager的getConnection方法获取连接的时候,DriverManager会自动根据url中的协议去寻找对应的驱动并自动将其注册。因此,身为开发人员,在连接MySQL数据库时不需要再进行注册驱动程序的操作,直接使用DriverManager即可。

综上,获取数据库连接的完整攻略就是:先加载并注册所需的驱动程序,然后使用DriverManager提供的getConnection方法获得连接对象,最后使用连接对象进行数据库的操作,操作完成后,记得关闭连接。

阅读剩余 31%

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

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

相关文章

  • 使用weixin-java-miniapp配置进行单个小程序的配置详解

    使用weixin-java-miniapp配置进行单个小程序的配置,需要遵循下面的步骤: 1. 引入依赖 在pom.xml文件中引入以下依赖: <dependency> <groupId>com.github.binarywang</groupId> <artifactId>weixin-java-miniap…

    Java 2023年5月23日
    00
  • SpringBoot异常处理之异常显示的页面问题

    下面是SpringBoot异常处理之异常显示的页面问题的完整攻略。 异常显示的页面问题 当我们在SpringBoot应用中发生了异常时,默认情况下,会直接将异常信息输出到控制台上。如果是Web应用,我们通常需要更加友好的方式来展示异常信息,方便排查问题。 本篇攻略将介绍两种常见的方式来实现在Web应用中展示异常信息的需求。 方法一:使用@Controller…

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

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

    Java 2023年5月5日
    00
  • Spring Boot 将yyyy-MM-dd格式的文本字符串直接转换为LocalDateTime出现的问题

    当使用Spring Boot将yyyy-MM-dd格式的文本字符串转换为LocalDateTime时,可能会遇到以下问题: 时区问题:因为LocalDateTime并不包含时区信息,默认情况下会使用系统默认时区,而不是输入字符串中的时区信息。 格式不匹配问题:如果输入字符串中包含时分秒等信息,但是转换的目标LocalDateTime只需要年月日信息,则会出现…

    Java 2023年5月27日
    00
  • 常见的Java压力测试工具有哪些?

    常见的Java压力测试工具有许多,其中比较常用的有JMeter、Gatling、Apache Bench (ab)等。下面分别介绍它们的使用方法。 JMeter 简介 Apache JMeter是一个开放源代码的Java应用程序,主要用于对软件进行性能测试,它最初是为Web应用程序的测试而开发的。它可以用于测试静态和动态资源(如动态参数的参数化,用户输入,C…

    Java 2023年5月11日
    00
  • 详解java一维数组及练习题实例

    详解Java一维数组及练习题实例 什么是一维数组? 在Java中,数组是一组具有相同数据类型的连续存储的数据集合。一维数组就是有限个相同类型的数据的集合,每个元素都可以通过一个索引(下标)访问。Java的数组是一个引用类型,它是由一个固定大小的、连续的、内存空间相邻的元素组成的集合,这些元素具有相同的数据类型。 如何创建一维数组? 我们可以使用[]或者new…

    Java 2023年5月26日
    00
  • 自定义@RequestBody注解如何获取JSON数据

    自定义@RequestBody注解可以方便我们在处理请求数据时进行更细致的控制和处理。其实,要自定义@RequestBody注解获取JSON数据很简单,只需要通过反射机制获取请求体中的数据并进行处理即可。 以下是具体的步骤: 定义自定义注解 定义一个自定义注解并使用@Target(ElementType.PARAMETER)来标识该注解只能用在参数上,例如:…

    Java 2023年5月26日
    00
  • MyBatisPlus的简介及案例详解

    MyBatisPlus的简介及案例详解 MyBatisPlus简介 MyBatisPlus是一个基于MyBatis的增强工具库,通过简化开发、提高效率的方式来增强MyBatis的功能。MyBatisPlus提供了很多实用的功能,包括但不限于分页、逻辑删除、自动填充、注入器、代码生成器等等。 MyBatisPlus案例详解 示例1:使用分页功能 MyBatis…

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