我是 Spring 应用程序的新手。运行我的项目以根据我创建的类创建数据库对象,我收到以下错误: 无法将名称 [org.hibernate.dialect.MySQL5Dialect] 解析为策略 [org.hibernate.dialect.Dialect]
我添加了这些依赖项:
<dependencies>
<!-- https://mvnrepository.com/artifact/javax.persistence/javax.persistence-api -->
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>javax.persistence-api</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
MySQL55Dialect
已弃用并从 Hibernate 6.2 中的 hibernate-core 中删除
请参阅删除对旧数据库版本的支持
此版本引入了 Hibernate 支持的大多数数据库方言的最低支持数据库版本的概念。这意味着供应商不再支持的版本的遗留代码已从 hibernate-core 模块中删除。然而,它仍然可以在 hibernate-community-dialects 模块中使用,只是在不同的包下,即 org.hibernate.community.dialect 而不是 org.hibernate.dialect。请注意,这还包括版本特定的方言,例如 PostgreSQL81Dialect、MariaDB102Dialect 等。
支持的最低方言版本如下:
MySQL 5.7
这给你留下了两个选择:
MySQLDialect
hibernate-community-dialects
并使用 MySQL55Dialect