使用 DriverManager 和 SpringBoot(Hibernate) 连接数据库的区别

Difference between connecting to a database using DriverManager and SpringBoot(Hibernate)

开发 Java 应用程序时,有 2 种连接数据库的方法。

  1. 使用 DriverManager

    连接conn = DriverManager.getConnection(url,名称,密码); // 执行查询。

  2. 在SpringBoot中使用应用属性文件

    spring.jpa.hibernate.ddl-自动=none spring.datasource.url=jdbc:mysql://localhost:5432/db_name spring.datasource.username=用户 spring.datasource.password=密码

现在您可以在 class 上使用 @Entity 注释将数据放入数据库。

我的问题是这两种方式有何不同。如果不是如何,SpringBoot 方法在后台是否与 DriverManager 相同。

当您设置配置属性时,您只是在对 spring 说:“嘿,我有这个属性,你能自动配置我需要的吗?”。此时 spring 在应用程序启动时将使用您的配置属性来设置连接到数据库所需的一切(是否使用 DriverManager 并不重要)。

Spring 完全按照您应该做的来配置数据库连接。

请记住,在 99% 的情况下,您无法编写出比 spring 更好的代码。因此,使用 spring 属性

我假设 Driver 经理 你想参考 JDBCSpringboot(Hibernate) 你想说 JPA.

为了简单地回答您的问题,JDBC 和 JPA 都将连接到 driver。只是如果您使用 JPA,默认情况下会执行此步骤,而无需您明确编码。

您可以将 JPA 视为 JDBC 的上层,它处理所有样板代码,例如连接到driver.

您可以在此处阅读有关 JPA 和 JDBC 的更多信息:JPA or JDBC, how are they different?