我試圖將Hibernate(3.2.5)與PostgreSQL 8.2連接起來,但是當我嘗試在hbm.xml文件中映射具有關係證書的類證書時,出現以下異常:無法連接Postgres與休眠
**
PSQLException: ERROR: relation "certificate" does not exist
**
創建的SQL證書:
CREATE TABLE "Certificate" ( id bigint NOT NULL,
name text,
CONSTRAINT certificate_pk1 PRIMARY KEY (id)
) WITHOUT OIDS;
的POJO CLAS '證書' 是:
public class Certificate implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String toString() {
return "model.Certificate[id=" + id + "]";
}
}
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> <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
<property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
<property name="hibernate.connection.url">jdbc:postgresql://localhost /Company</property>
<property name="hibernate.connection.username">postgres</property>
<property name="hibernate.connection.password">abc123</property>
<mapping resource="hibernate.hbm.xml"/>
</session-factory>
</hibernate-configuration>
」
謝謝。它終於奏效了。我所做的是,在映射證書類的hbm.xml文件中,我使用了table =''Certificate''而不是table =「Certificate」。 – Supereme
@Frank我有同樣的問題。奇怪的是,它在我的iMac上工作,但是我的MacBook把這個錯誤拋給我。這怎麼可能? – Varundroid