在Hibernate 4.0中,我想使用session.createQuery("from dbemployee").list();
从表中检索记录
但Hibernate显示异常:
Hibernate Exception: org.hibernate.hql.internal.ast.QuerySyntaxException: dbemployee is not mapped [from dbemployee]**
我的POJO类(class)是Employee
public class Employee implements Serializable {
private static final long serialVersionUID = 1L;
private String empId;
private String empName;
private long empSalary;
public Employee() {
super();
}
// getters and setters
}
我在Oracle 11g中的表
dbemployee
是:dbemployee:
EMPID varchar2(20)
EMPNAME varchar2(20)
EMPSALARY number(11);
Employee.hbm.xml是
<hibernate-mapping>
<class name="beanclass.Employee" table="dbemployee">
<id name="empId" type="java.lang.String" column="EMPID">
<generator class="assigned"></generator>
</id>
<property name="empName" column="EMPNAME" type="java.lang.String"/>
<property name="empSalary" column="EMPSALARY" type="java.lang.Long" />
</class>
</hibernate-mapping>
请帮助解决此异常。
提前致谢
最佳答案
您的查询应为:
session.createQuery("from Employee").list();
您必须在查询中使用类名,而不是表名。
关于从表中检索记录时,Hibernate异常: org. hibernate.hql.internal.ast.QuerySyntaxException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13954307/