读书人

使用基于Annotation的Hibernate应用时

发布时间: 2012-09-08 10:48:07 作者: rapoo

使用基于Annotation的Hibernate应用时出现的Exception:not mapped

使用基于Annotation的Hibernate应用时,在使用HQL做查询时出现异常:
org.hibernate.hql.ast.QuerySyntaxException:xx?not mapped

异常的原因是表没有被映射,但是,明明表结构在数据库中都已经生成了.

测试良久,发现如果在定义注解Entity的时候,指定了映射到数据库中表的名称,那么HQL语句中的对象名称就要换成这里指定的表名称,就不能是类对象名了,或是指定的名称换成默认生成的就ok了.

?

如下:

@Entity ? ? ? ? ? ? ? ? ? ? ? ? --使用默认的表名(entity)

HQL:select _u from User _u

@Entity(name="t_user") --指定表名称

HQL:select _u from t_user _u

读书人网 >软件架构设计

热点推荐