JDBC(Java DataBase Connectivity)是基本API,它通过使用Java编程语言执行SQL语句来实现与SQL数据库服务器的交互。
我正在学习如何配置 Hibernate 项目。我的配置文件如下: 我正在学习如何配置 Hibernate 项目。我的配置文件如下: <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <!-- JDBC Database connection settings --> <property name="connection.driver_class">com.mysql.cj.jdbc.Driver</property> <property name="connection.url">jdbc:mysql://localhost:3306/test</property> <property name="connection.username">username</property> <property name="connection.password">password</property> <!-- JDBC connection pool settings ... using built-in test pool --> <property name="connection.pool_size">1</property> <!-- Select our SQL dialect --> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <!-- Echo the SQL to stdout --> <property name="show_sql">true</property> <!-- Set the current session context --> <property name="current_session_context_class">thread</property> </session-factory> </hibernate-configuration> 虽然项目确实运行顺利并给出了预期的结果,但最后有一些日志引起了我的注意: ... BUILD SUCCESSFUL in 1s 3 actionable tasks: 2 executed, 1 up-to-date Oct 08, 2023 5:10:39 PM org.hibernate.Version logVersion INFO: HHH000412: Hibernate ORM core version 6.3.0.Final Oct 08, 2023 5:10:39 PM org.hibernate.cache.internal.RegionFactoryInitiator initiateService INFO: HHH000026: Second-level cache disabled Oct 08, 2023 5:10:39 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure WARN: HHH10001002: Using built-in connection pool (not intended for production use) Oct 08, 2023 5:10:39 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator INFO: HHH10001005: Loaded JDBC driver class: com.mysql.cj.jdbc.Driver Oct 08, 2023 5:10:39 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator INFO: HHH10001012: Connecting with JDBC URL [jdbc:mysql://localhost:3306/test] Oct 08, 2023 5:10:39 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator INFO: HHH10001001: Connection properties: {password=****, user=joun} Oct 08, 2023 5:10:39 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator INFO: HHH10001003: Autocommit mode: false Oct 08, 2023 5:10:39 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$PooledConnections <init> INFO: HHH10001115: Connection pool size: 1 (min=1) Oct 08, 2023 5:10:39 PM org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator getJdbcEnvironmentUsingJdbcMetadata WARN: HHH000339: Could not obtain connection metadata: java.sql.SQLSyntaxErrorException: Unknown column 'RESERVED' in 'where clause' Oct 08, 2023 5:10:39 PM org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl constructDialect WARN: HHH90000025: MySQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default) Oct 08, 2023 5:10:40 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$PoolState stop INFO: HHH10001008: Cleaning up connection pool [jdbc:mysql://localhost:3306/test] 5:10:40 PM: Execution finished ':Main.main()'. 在我看来,最后两个警告与 connection metadata 和 dialect 有关。虽然我不知道如何处理第一个问题,但我认为第二个问题与这些行有关 <!-- Select our SQL dialect --> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> 我尝试过将方言更改为其他名称,例如org.hibernate.dialect.MariaDBDialect或删除它们,但最终没有结果。 我可以得到一些关于如何修复这两个警告的建议吗? 按照 Mark Rotteveel 的建议,我尝试更改依赖项以使用 MariaDB 而不是 MySQL 本身。 dependencies { testImplementation(platform("org.junit:junit-bom:5.9.1")) testImplementation("org.junit.jupiter:junit-jupiter") // hibernate implementation("org.hibernate.orm:hibernate-core:6.3.0.Final") // mysql / mariadb // implementation("mysql:mysql-connector-java:8.0.27") implementation("org.mariadb.jdbc:mariadb-java-client:3.1.4") } 结果我也不必指定驱动程序和方言。 <!-- JDBC Database connection settings --> <!-- <property name="connection.driver_class">org.mariadb.jdbc.Driver</property> --> <property name="connection.url">jdbc:mariadb://localhost:3306/test</property> <property name="connection.username">joun</property> <property name="connection.password">123</property> <!-- JDBC connection pool settings ... using built-in test pool --> <property name="connection.pool_size">1</property> <!-- Select our SQL dialect --> <!-- <property name="dialect">org.hibernate.dialect.MariaDBDialect</property> --> <!-- Echo the SQL to stdout --> <property name="show_sql">true</property>
如何使用spark/jdbc从azure databricks更新postgresql表?
我能够使用以下语句连接到在 Azure Databricks 群集上安装的 JDBC 驱动程序: 远程表 = (spark.read .format("jdbc") .option("驱动程序...
java.sql.SQLException:ORA-28040:没有匹配的身份验证协议 DSRA0010E:SQL 状态 = 99999,错误代码 = 28,040
我正在尝试将WebSphere 中的数据源更改为指向其他环境。我可以使用 toad 或 sqldeveloper 连接它。但是,当我尝试测试来自 websph 的连接时...
使用带有 Kerberos 身份验证的 JDBC 连接到 Hive 时出现问题
我正在尝试编写一个程序来使用具有 Kerberos 身份验证的 Jdbc 驱动程序连接到 Hive。我的程序如下: 公共静态无效主(字符串a []) { ... 连接字符串_ =...
如何使用 JSP 而不是 servlet 在 HTML 表中显示 JDBC 结果
下面的 servlet 连接到数据库,检索大量信息,然后以表格格式打印所有信息。 如果我创建了 JSP 文件,是否有更有效的方法来执行此操作?而不是
尝试使用 JDBIs ResultSetMapper API 构建一个 Country 对象,但是我有一个问题不知道如何解决。 对于如下所示的连接区域(州/地区)的结果集...
如何执行,使用 JDBC 在 Pyspark 中启动 Sql for teradata
我已在 teradata JDBC 连接参数中设置 RUNSTARTUP=ON 来执行启动 sql。我不知道在哪里/如何指定启动sql以在teradata中写入spark数据帧。 我想执行...
驱动程序 com.mysql.jdbc.Driver 声称不接受 jdbcUrl,jbdc:mysql://localhost:3306/emp
MySQL 连接器是 Maven 依赖项的一部分,所有数据库属性(如 url、用户名、密码)都在 application.properties 中提及。 获取 RuntimeException,例如: 司机通讯....
Google Apps 脚本 - JDBC 到 Google 云数据库连接失败
我在使用 Google Apps 脚本连接到 Google Cloud 数据库时遇到错误。该脚本在 2021/5/11 11:00AM 之前运行良好。之后就无法连接
com.mysql.cj.jdbc.exceptions.CommunicationsException:通信链路故障
我正在尝试将我的java应用程序与sql数据库连接,当我单击“保存”按钮时,它给了我以下错误 com.mysql.cj.jdbc.exceptions.CommunicationsException:通信链路故障 ...
我们的应用程序使用c3p0-0.9.5.5.jar和ojdbc8-12.2.0.1.jar来连接Oracle 19C。 这是正在传递的标志 com.mchange.v2.c3p0.PoolBackedDataSource@a07b9a4b [connectionPoolDataSour...
如何在 MySQL 数据源中设置 jdbc ClientInfo
在 Java 和 MySQL 中,我们希望添加 jdbc ClientInfo 来标识每个查询的来源。目前我们可以做这样的事情: 尝试(连接连接= dataSource.getConnection()){
我有一个使用 ojdbc8.jar 文件的 java 程序。当我连接到数据库时,我收到“与服务器证书 DN 不匹配”的消息。虽然客户通过的和...
嗨,我正在尝试配置 quarkus 以连接到 Oracle 数据库。使用当前配置,我可以连接到数据库,但无法指定当前架构。 我跟着
这让我头疼。 我刚刚在我的笔记本电脑上安装了 pentaho 社区版。我能够按照 pdf 文档中的说明连接到 xampp 中的 mysql 服务器...
ORA-01839:日期对于使用PreparedStatement
我正在将数据插入我的 oracle sql 数据库,其中一个值是 1980 年 2 月 29 日的日期。当我添加此值时,出现此错误 java.sql.BatchUpdateException:ORA-01839:...
我的这个 Java 应用程序仍然通过 JDBC 代码与 Oracle 11g 进行通信。话虽如此,想要检查该应用程序对 Oracle 历史记录的查询(如果已经存在)。 ...
我正在开发一个基于Java的实用程序,它将一些列值从一个表迁移到另一个表。我的第一个表包含一个 ID 列,其值是固定类型的(例如 Java 中的某些枚举类型
java.sql.SQLException:二进制编码结果集中第 10 列(共 12 列)中存在未知类型 '246
当我在 Windows 上启动 Tomcat 时,收到以下异常: java.sql.SQLException:二进制编码结果集中第 10 列(共 12 列)中存在未知类型“246”。 在 com.mysql.jdbc.MysqlIO。
statement.close() 和 connection.close() 有什么区别? 我想知道它们之间的区别以及如果我使用语句 .close() 而不是连接会发生什么....