org.hibernate.hql.ast.QuerySyntaxException
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了org.hibernate.hql.ast.QuerySyntaxException相关的知识,希望对你有一定的参考价值。
org.hibernate.hql.ast.QuerySyntaxException:
eg:org.hibernate.hql.ast.QuerySyntaxException: Admin is not mapped [select count(a)from Admin a where a.adminname=? and a.adminpwd=?]
问题原因
1. from 后面跟着的是实体类名,而不是表名
2. Hql语句写错。
3. 没有添加映射文件或者没有采用注解的形式配置映射
解决办法
1. 将from后改为实体类名
2. 检查Hql语句错误,若无错,检查是否包括不该有的空格
3. 在applicationContext.xml文件中检查是否添加了实体类的映射。若添加了,检查数据库中的表与实体映射类的字段是否一一对应。若采用注解的形式配置映射,若@Entity(name="admin"),hql语句的from后需与name的值相同。通过包扫描方式加载注解类时,
<property name="packagesToScan">
<list> <value>com.admin.bean</value>
</list>
</property>
它会扫描com.admin.bean下的所有类,但不包括子类,如果要包括子类,需要写成com.admin.bean*,注意bean与*之间没有点.
以上是关于org.hibernate.hql.ast.QuerySyntaxException的主要内容,如果未能解决你的问题,请参考以下文章