3

我正在尝试从我在 Postgres 中创建的数据库中对 pojos(在 eclipse 3.4.2 中使用休眠工具插件 v3.2.4x)进行逆向工程,但我的表被忽略了。如果我在 hibernate.cfg.xml 文件中将 'public' 指定为 'hibernate.default_schema' 属性的值,它会起作用,但如果我尝试指定不同的模式,则不会生成任何内容。

我已经尝试修改案例(即下、上、骆驼),但我仍然得到相同的结果。这是我的 hibernate.cfg.xml 文件:

 <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
      "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
      "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory name="MyFactory">
        <property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
        <property name="hibernate.connection.password">[mypassword]</property>
        <property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/testgis</property>
        <property name="hibernate.connection.username">postgres</property>
        <property name="hibernate.default_schema">locatimus</property>
        <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
    </session-factory>
</hibernate-configuration>

这是我在 pgAdmin III 中的设置图片 - http://twitpic.com/snj8i

我很确定我正在做(或错过)一些简单的事情。正如我所说,如果我将架构更改为公共,那么该架构中所有表的 pojos 都会生成!

任何人都可以帮忙吗?

非常感谢,达米安

4

2 回答 2

3

好的,我发现了问题。似乎表名必须是小写的,否则休眠工具看不到它们。我不知道这是 PostgresSQL 方言还是 Hibernate 本身的错误。

于 2009-12-11T13:43:19.970 回答
0

postgres 用户是否有权访问 locatimus 模式中的表?

于 2009-12-08T22:43:27.790 回答