Hibernate Dialect must be explicitly set

在使用MyEclipse,从Oracle数据库进行逆向工程的时候出错,我使用的是JPA,
错误为:

!ENTRY org.eclipse.core.jobs 4 2 2010-06-09 09:11:34.031
!MESSAGE An internal error occurred during: "Generating Artifacts".
!STACK 0
org.hibernate.HibernateException: Hibernate Dialect must be explicitly set
at org.hibernate.dialect.DialectFactory.determineDialect(DialectFactory.java:57)
at org.hibernate.dialect.DialectFactory.buildDialect(DialectFactory.java:39)
at org.hibernate.cfg.SettingsFactory.determineDialect(SettingsFactory.java:426)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:128)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2005)
at com.genuitec.eclipse.hibernate.wizards.MEJDBCMetaDataConfiguration.readFromJDBC(MEJDBCMetaDataConfiguration.java:72)
at com.genuitec.eclipse.hibernate.wizards.GenerateArtifactsJob$7.execute(GenerateArtifactsJob.java:877)
at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:65)
at org.hibernate.console.ConsoleConfiguration.execute(ConsoleConfiguration.java:91)
at com.genuitec.eclipse.hibernate.wizards.GenerateArtifactsJob.buildConfiguration(GenerateArtifactsJob.java:858)
at com.genuitec.eclipse.hibernate.wizards.GenerateArtifactsJob.run(GenerateArtifactsJob.java:405)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

请不要说是什么方言没有设置,也不要说配置hibernate.cfg.xml,这里根本没有hibernate.cfg.xml,请高手指导一下
我根本都没有hibernate.cfg.xml这个文件,我用的是JPA
使用MySQL可以进行逆向工程,求解Oracle为什么不行

不管你是用的hibernate.cfg.xml还是hibernate.properties文件或是其他配置方式,造成这个问题的可能只有两个:
1你的hibernate.dialct这个属性没有配置正确。或者有可能是配置正确而没有调用才会导致这个问题。
hibernate.cfg.xml格式怎么修改就不说了。
hibernate.properties文件格式修改方法:
注意hibernate.properties需放在src目录中,内容如下:

hibernate.connection.driver_class=com.mysql.jdbc.Driver
hibernate.connection.password=sa
hibernate.connection.url=jdbc\:mysql\数据库url
hibernate.connection.username=root
hibernate.dialect=org.hibernate.dialect.MySQLDialect

2.hibernate-mapping配置文件有问题,好好检查table, <id></id>是否有问题

。。。楼主不管你用jpa还是什么都得有配置文件吧?jpa是applicatonContext.xml这个文件配置吗?忘了,好像是。
肯定得有地方配置你的数据库连接地址,用户名密码什么的吧?
如果是全放到java类里的,那就是改类,不过类里改的方法不同而已。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-06-10
。。。。谁能给我解释下啥是逆向工程。。?
你只是用了JPA注解的方式使用HIBERNATE的吧。。。
你可以寻找下你创建SessionFactory的地方 看看你在那里怎么设置的方言(创建SessionFactory 必要的信息还是有的 只不过信息不一定非得从hibernate.cfg.xml中去找)

谁给我解释下啥叫逆向工程
第2个回答  2010-06-09
你用的myeclipse???

...Hibernate Dialect must be explicitly set
数据库的hibernate方言错误 不同数据库方言不同 这是mysql的方言 <property name="dialect"> org.hibernate.dialect.MySQLDialect <\/property>

...hibernate dialect must be explicitly set 跪求回答!!!
无法建立EntityManagerFactory的Hibernate方言必须明确设置

org.springframework.beans.factory.BeanCreationException
这个问题是你在配置ApplicationContext.xml(beans.xml)中 配置有错误,检查一下

相似回答