日期:2014-05-18  浏览次数:20683 次

请教关于hibernate关联查询的问题
我现在有2张表 一张是表A 一张表B 
A表是主表,B是A的子表,也在xml配置了2张表的关系是many-to-one,直接做A表查询的时候可以直接取出B表的对应的值,
但是我现在要做一个条件查询.条件是B表的1个字段的值
Criteria c=sessionFactory.getCurrentSession().createCriteria(A.class);
c.add(Restrictions.eq("b.age", age));
这个时候我提交查询报错了

>org.hibernate.QueryException: could not resolve property: b.age of: com.xue.entity.A

意思是说在我的A表里面没有解析到b.age这个字段.
这个报错是为什么呢.还是说有地方没配置?
hibernate

------解决方案--------------------
c.createAlias("A","a");
c.add(Restrictions.eq("a.b.age", age));