我想将hibernate用于postreSQL但它不起作用。 我将.xml放到'resources'文件夹中。
这是我的hibernate.cfg.xml:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/postgres</property>
<property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
<property name="hibernate.connection.username">postgres</property>
<property name="hibernate.connection.password">123</property>
<!-- DB schema will be updated if needed -->
<property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
<property name="hibernate.hbm2ddl.auto">create</property>
<mapping class="ru.systemprom.example.testClass"/>
</session-factory>
</hibernate-configuration>
在开始时我得到错误信息:
22:09:43,646 INFO [org.hibernate.cfg.SettingsFactory] Database ->
name : HSQL Database Engine
version : 1.8.0
major : 1
minor : 8
22:09:43,646 INFO [org.hibernate.cfg.SettingsFactory] Driver ->
name : HSQL Database Engine Driver
version : 1.8.0
major : 1
minor : 8
22:09:43,692 INFO [org.hibernate.dialect.Dialect] Using dialect: org.hibernate.dialect.HSQLDialect // !? i setted up posgresSQL dialect not hsql =(
22:09:43,719 INFO [org.hibernate.engine.jdbc.JdbcSupportLoader] Disabling contextual LOB creation as JDBC driver reported JDBC version [3] less than 4
我认为Hibernate因为发生此错误而无法正常工作。 为什么忽略我的设置以及如何让它工作?
注意:我听说Maven从'资源'文件夹中获取所有内容,所以我认为问题不是因为它
答案 0 :(得分:1)
您创建会话工厂的代码是什么?确保您将配置文件传递给它... configure()可以接受字符串,文档,文件,URL等。
new Configuration().configure("hibernate.cfg.xml")