首页 > 代码库 > org.hibernate.hql.ast.QuerySyntaxException

org.hibernate.hql.ast.QuerySyntaxException

org.hibernate.hql.ast.QuerySyntaxException:

egorg.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