使用Hibernate时出现以下错误:
'hibernate.dialect' must be set when no Connection available
我正在使用数据源进行数据库连接.
emu*_*ano 10
问题可能是您没有为要连接的数据库安装客户端库.
我有一个没有persistence.xml文件的Spring应用程序,因此没有hibernate.dialect声明.
一旦我安装了MySQL Connector/J客户端库,错误便消失了.
编辑:当数据库服务器没有运行时,我也遇到了这个错误.现在经常发生的事情是我通过MAMP运行我的MySQL服务器.
即使您的配置文件具有适当的值但您没有在代码中配置它,您也会遇到此问题.
我在解释hibernate,我configure()以前忘了使用,buildSessionFactory()所以我得到了错误.
您可能想要重新检查它.
以前的代码给了我错误
SessionFactory factory = new Configuration().buildSessionFactory();
Run Code Online (Sandbox Code Playgroud)
更改的代码 无错误
SessionFactory factory = new Configuration().configure().buildSessionFactory();
Run Code Online (Sandbox Code Playgroud)
您需要设置属性
hibernate.dialect
Run Code Online (Sandbox Code Playgroud)
在 hibernate(persistence.xml 或 bean 声明)配置中,该值取决于您的数据库,例如:
Postgres: org.hibernate.dialect.PostgreSQL82Dialect
Oracle: org.hibernate.dialect.Oracle10gDialect
Run Code Online (Sandbox Code Playgroud)
例如,示例 persistence.xml 如下所示:
<persistence-unit>
...
<properties>
...
<property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect" />
...
</properties>
</persistence-unit>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
25294 次 |
| 最近记录: |