Hibernate异常

来源:百度知道 编辑:UC知道 时间:2024/06/20 18:30:31
org.hibernate.hql.ast.QuerySyntaxException: CaigouXPB is not mapped. [select XPID from CaigouXPB where XPMC='太太口服液']

CaigouXPB.hbm.xml和我对实体的操作类在不同的包里 是不是cfg.xml里没配置好?我应该怎么改 高手指点一下 感激。。
我接手这块之前已经有了CaigouXPB这个表的实体和映射文件
我是在新建的包里建的类和进行对这个表的操作 我应该怎么改?

楼主首先看一下hibernate.hbm.xml文件中是否对CaigouXPB.hbm.xml配置正确
也就是看一下是否拼写正确,配置hibernate.hbm.xml文件往往容易出错的地方就在这里
另外检查CaigouXPB.hbm.xml文件中是否将类的位置、名称书写正确

问题补充回答:
首先找到hibernate.hbm.xml
看里面是否配置对了这个类
hibernate.hbm.xml文件应该在src下或者在common包下,当然这个common包是自己定义的,通用包,不知道你的是不是有这个包
如果配置正确
那么看CaigouXPB.hbm.xml这个文件
他一般在bean包里面
也就是跟类文件放到了一起

有可能是,Hibernate 对 数据库的 映射没有配置正确。
也有可能是 HQL 语句 或者 传参什么的有问题。

注意下,SQL中表之间的关系,表中的字段及字段的类型,有没有设置主键等。

现在的重点是读配置文件,这个配置文件我们一般放在eclipse的scr根目录下,而当eclipse编译时会自动把这个目录下的文件编译到bin目录下,而这个bin目录下是被配置成classpath环境变量,而configure方法就是在classpath环境变量下查找配置文件。 再来分析,无参调用configure方法时,默认的是传递的hibernate.cfg.xml配置文件,所以只有取名为这个的配置文件,才可以调用无参的configure方法,如果是其它名字的配置文件,则调用含参的配置文件,并且这个参数名应为这个配置文件的名字。 当读取配置文件后的Configuration对象,才是一个真正意义上可操控的实例对象。 然后,再用这个对象来构建一个SessionFactory对象
以下是我笔记中的一段内容,希望对你有帮助。
其实关键是主配置文件要被读到,而且要主配置文件要正确关联到实体配置文件(映射文件)
我即将(预计9月25号前)发一个hibernate的学习笔记 希望到时去看看,也希望指正错误:
链接地址:hibernate查询异常 Spring+Struts+Hibernate中的异常 hibernate Hibernate Hibernate的空指针异常,大家看下 异常:ERROR [org.hibernate.proxy.BasicLazyInitializer] - CGLIB Enhancement failed... Jpetstore Spring 用Hibernate/iBATIS实现数据持久层异常 hibernate 是什么? hibernate好处 hibernate问题