大家好。我正在尝试使用 Hibernate 对我的 Maven 项目进行逆向工程。但它一直给我这个错误消息:
读取架构错误:读取 mysql.user 的列元数据时出错
波姆:
<dependencies>
<!-- https://mvnrepository.com/artifact/com.mysql/mysql-connector-j -->
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<version>8.0.33</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.hibernate.orm/hibernate-core -->
<dependency>
<groupId>org.hibernate.orm</groupId>
<artifactId>hibernate-core</artifactId>
<version>6.2.3.Final</version>
</dependency>
</dependencies>
</project>
Hibernate.cfg.xml:
<hibernate-configuration>
<session-factory name="Conection">
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/busstation</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
</session-factory>
</hibernate-configuration>
MYSQL数据库脚本:
DROP DATABASE IF EXISTS BusStation;
CREATE DATABASE IF NOT EXISTS BusStation;
USE BusStation;
CREATE TABLE IF NOT EXISTS Bus(
n INT PRIMARY KEY AUTO_INCREMENT,
sits INT NOT NULL,
plate CHAR(5) NULL
);
INSERT INTO Bus (sits, plate) VALUES(24, 'AAAAA');
INSERT INTO Bus (sits, plate) VALUES(28, 'AAAAB');
INSERT INTO Bus (sits, plate) VALUES(12, 'AAAAC');
INSERT INTO Bus (sits, plate) VALUES(48, 'AAAAD');
感谢您的宝贵时间。
Hibernate.cfg.xml 缺少一些必要的属性。现在已经修复了。