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与*之间没有点.

猜你喜欢

转载自1782227698.iteye.com/blog/2339074
今日推荐