遇到一个诡异的HQL问题,知道的给点提示啊

平时写HQL语句都是这样写:

 

query = this.hibernateTemplate.getSessionFactory().getCurrentSession().createQuery(
					"from User u where groupId =:groupid and u.registeUserID=:registeuserid")//registeUserusername为外键
					.setInteger("groupid", g.getId()).setString("registeuserid", sessionid);

 今天不是用id做主键,换个username吧。问题来了报没有这个属性异常。最后是这么解决的:

 

query = this.hibernateTemplate.getSessionFactory().getCurrentSession().createQuery(
					"from User u where groupId =:groupid and u.registeUser.username=:registeuserid")
					.setInteger("groupid", g.getId()).setString("registeuserid", sessionid);

 请问为什么要加类的“对象名.属性”啊???难不成必须是一id为主键才行,请高手回答下,谢谢

你可能感兴趣的:(HQL)