我有我想与JPA找不到实体
CREATE TABLE translations (
id SERIAL NOT NULL,
KEY VARCHAR(255),
LANGUAGE VARCHAR(255),
TRANSLATION VARCHAR(255)
)
使用我创造了这个实体此数据表:
@Entity
@Table(name = "translations")
public class TranslationTestEntitie extends AbstractEntityWithId {
private static final long serialVersionUID = 2029240552230401080L;
@Column(name = "id", insertable=false, updatable=false)
private long id;
@Column(name = "key", insertable=false, updatable=false)
private String key;
@Column(name = "language", insertable=false, updatable=false)
private String language;
@Column(name = "translation", insertable=false, updatable=false)
private String translation;
public TranslationTestEntitie() {
}
// Getters and setters
public Long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public String getLanguage() {
return language;
}
public void setLanguage(String language) {
this.language = language;
}
public String getTranslation() {
return translation;
}
public void setTranslation(String translation) {
this.translation = translation;
}
}
当我试图让这个查询SELECT c FROM Translations c WHERE c.Id = 70
我得到这个消息The abstract schema type 'Translations' is unknown.
这个权利根据t数据库表。
P.S这是我用它来获取数据的代码:
public TData td;
public class TData {
private long id;
private String key;
private String language;
private String translation;
public TData() {
};
public TData(long id, String key, String language, String translation) {
// super();
this.id = id;
this.key = key;
this.language = language;
this.translation = translation;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public String getLanguage() {
return language;
}
public void setLanguage(String language) {
this.language = language;
}
public String getTranslation() {
return translation;
}
public void setTranslation(String translation) {
this.translation = translation;
}
}
public TData getDataObj() {
return td;
}
@PostConstruct
public void loadData() {
td = new TData();
String query = "SELECT c FROM Translations c WHERE c.id = 70";
td = (TData) dao.jpqlQuerySingle(query);//(query);//jpqlQuery(query);
}
但是我还是空的对象。
您是否已经手动创建了该实体?为什么不使用netbeans/eclipse来使用数据库表结构来生成这个? – pepuch 2013-03-20 10:28:51
你如何尝试查询?如何注册您的实体类型? – 2013-03-20 10:29:02
你可以发布请求数据库的代码吗? – benzonico 2013-03-20 10:29:17