有三个实体类
A { id, B } , B {id, C} C{id}
现在有个HQL:
from A left join A.B where B.C.id = ?
也就是说,我现在有个查询条件是cid. 我要查A,请问我应该怎么弄啊?上面那条语句报错
检查hbm配置文件,A和B B和C都是一对一关系?
fremAwhereB.C.id=?
已查出来,属性配出错了。回复 @独孤小败:hql语句中用的属性名要与bean中成员变量名相同,不是数据库字段名。这个问题我也遇到过。回复 @独孤小败:couldnotresolveproperty可能是有个hbm文件中有个属性hibernae不认识。hbm是自动生成的吗不是,A和B是多对一,B和C是多对一 fromAleftjoinA.BleftjoinB.Cxwherex.id=? 猜的不对,报错,org.hibernate.QueryException:couldnotresolveproperty: fromA joinA.Bb whereb.cid=? b实体类里面没有cid这个属性,因为配置了many-to-one关系,两个只能有一个配置文件懒加载
是的fromAleftjoinB ON A.B.id=B.id whereB.C.id=?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。