java - 如何解决 "Dialect class not found: org.hibernate.dialect.MYSQLDialect"异常?

标签 java mysql hibernate

我是 hibernate 的新手,所以我通过观看视频教程进行练习。我关注的链接是,

https://www.youtube.com/watch?v=FFMOZY4z6bE&list=PL4AFF701184976B25&index=5

在eclipse中是一个简单的java项目。这里我使用 mysql 数据库。这是我的 Hibernate.cfg.xml 文件,

com.mysql.jdbc.驱动程序 jdbc:mysql://localhost:3306/hibernatedb 根 根

    <!-- JDBC connection pool (use the built-in) -->
    <property name="connection.pool_size">1</property>

    <!-- SQL dialect -->
    <property name="dialect">org.hibernate.dialect.MYSQLDialect</property>

    <!-- Disable the second-level cache  -->
    <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>

    <!-- Echo all executed SQL to stdout -->
    <property name="show_sql">true</property>

    <!-- Drop and re-create the database schema on startup -->
    <property name="hbm2ddl.auto">create</property>

    <!-- Names the annotated entity class -->
    <mapping class="com.***.dto.UserDetails"/>

我遇到了这种错误,

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Exception in thread "main" org.hibernate.HibernateException: Dialect class not found:   org.hibernate.dialect.MYSQLDialect
at org.hibernate.dialect.resolver.DialectFactory.constructDialect(DialectFactory.java:159)
at org.hibernate.dialect.resolver.DialectFactory.buildDialect(DialectFactory.java:99)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:117)
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2863)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2859)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1870)
at com.aurodisplay.hibernate.HibernateTest.main(HibernateTest.java:17)
Caused by: java.lang.ClassNotFoundException: org.hibernate.dialect.MYSQLDialect
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:192)
at org.hibernate.dialect.resolver.DialectFactory.constructDialect(DialectFactory.java:156)

谁能帮我解决这个问题。

最佳答案

如果您使用的是属性文件,请确保行尾没有空格。

hibernate.dialect=org.hibernate.dialect.MySQLDialect

关于java - 如何解决 "Dialect class not found: org.hibernate.dialect.MYSQLDialect"异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25481330/

相关文章:

php - 阻止 sql 更新我的更新表单中的空白或空字段

mysql - 如何有效地选择基于 SQL 中不同时间戳计算的多个总和的平均总和?

java - SecondTable 可以是 OneToMany 关系吗?

java - 将hibernate域对象插入到不同的数据库?

java - JDK安装问题

java - 如何实现我扩展到 Frame 而不是 JFrame 的类?

php - 如何使用 mysql 在带有 php 的文件夹中快速更改图像名称?

c# - (N)Hibernate 在查询中选择常量

java - Spring 和数据问题

java - 接口(interface)和动态方法调度